Function at 0x10037459
Capabilities:
Encrypt data using rc4 prga

Disassembly:
and eax, 0x15998
pop eax
push edi
call 0x10036b05
add byte [edx], bh
inc ecx
cmp eax, 0x3949403d
add esp, 4
pop edi
mov edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4f8], edx
jmp 0x10036b26
mov eax, dword [ebp - 0x4f8]
add eax, 1
mov dword [ebp - 0x4f8], eax
push ecx
push ebx
add esp, 4
jmp 0x10036b32
and ecx, 0x586
jmp 0x10036b41
add ecx, 0x83e0
pop ecx
push eax
sub eax, 0x802d
jmp 0x10036b57
pop eax
mov ecx, dword [ebp - 0x4f8]
sub ecx, dword [ebp - 0x3f4]
cmp ecx, 0xffffffff
jb 0x10036ba0
push edi
add edi, 0x7427
xor edi, 0x1165e
and edi, 0x1804d
pop edi
push edx
push ecx
add esp, 4
jmp 0x10036b8a
call 0x10036b97
add byte [ecx], bh
dec edi
dec esi
xor eax, 0x833b3439
les eax, [edx + ebx*2]
jmp 0x10036d9c
mov dword [ebp - 0xc94], 7
mov edx, dword [ebp - 0x4f8]
mov dword [ebp - 0xaf0], edx
push edx
or edx, 0xd6f9
or edx, 0x14ea5
add edx, 0x154f1
or edx, 0x16583
pop edx
push ebx
push edx
add esp, 4
and ebx, 0x2d34
sub ebx, 0x1210d
or ebx, 0x74fb
pop ebx
mov eax, dword [ebp - 0x15d4]
mov dword [ebp - 0xaec], eax
mov dword [ebp - 0xc98], 0
mov ecx, dword [ebp - 0x4f8]
cmp ecx, dword [ebp - 0x15d4]
jne 0x10036c1d
mov edx, dword [ebp - 0xc98]
mov dword [ebp - 0x15dc], edx
jmp 0x10036d4e
cmp dword [ebp - 0xc94], 0
jle 0x10036d42
push esi
and esi, 0x16c8e
call 0x10036c41
add byte [eax + 0x41], dl
inc ecx
xor al, 0x33
xor eax, 0x834b4e39
les eax, [ecx + eax*4]
out dx, al
arpl word [edi + 1], dx
add byte [esi + 0x51], bl
and ecx, 0x9a17
jmp 0x10036c5b
pop ecx
mov eax, dword [ebp - 0xaf0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xaec]
movzx eax, byte [edx]
cmp ecx, eax
je 0x10036cde
push eax
push ebx
add esp, 4
or eax, 0xb798
or eax, 0x1361f
pop eax
push edi
or edi, 0x17d20
xor edi, 0x98be
xor edi, 0x3b13
pop edi
push eax
push edx
add esp, 4
add eax, 0x7490
pop eax
mov ecx, dword [ebp - 0xaf0]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0xaec]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x10036cc6
mov dword [ebp - 0x15d8], 1
jmp 0x10036cd0
mov dword [ebp - 0x15d8], 0xffffffff
mov edx, dword [ebp - 0x15d8]
mov dword [ebp - 0xc98], edx
jmp 0x10036d42
push esi
sub esi, 0x13398
jmp 0x10036ceb
call 0x10036cf7
add byte [edx], dh
xor dh, byte [edx]
xor esi, dword [edx]
inc edi
add esp, 4
jmp 0x10036d03
pop esi
push eax
push ebx
add esp, 4
and eax, 0x65ac
pop eax
mov eax, dword [ebp - 0xc94]
sub eax, 1
mov dword [ebp - 0xc94], eax
mov ecx, dword [ebp - 0xaf0]
add ecx, 1
mov dword [ebp - 0xaf0], ecx
mov edx, dword [ebp - 0xaec]
add edx, 1
mov dword [ebp - 0xaec], edx
jmp 0x10036c1d
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x15dc], eax
cmp dword [ebp - 0x15dc], 0
jne 0x10036d97
push ecx
jmp 0x10036d5f
pop ecx
push esi
jmp 0x10036d68
pop esi
push eax
push edi
add esp, 4
xor eax, 0x2e55
jmp 0x10036d7c
sub eax, 0xddd5
sub eax, 0x1060f
pop eax
mov ecx, dword [ebp - 0x4f8]
mov dword [ebp - 0x3fc], ecx
jmp 0x10036dd8
jmp 0x10036b17
push esi
call 0x10036dad
add byte [edi + 0x48], al
aaa
dec ebx
aas
inc edi
dec ecx
dec ecx
xor eax, dword [esi - 0x7d]
les eax, [ecx + eax*4]
out dx, al
stosb byte es:[edi], al
push ebp
add dword [eax], eax
pop esi
push esi
or esi, 0xb7d2
and esi, 0x11209
jmp 0x10036dcd
pop esi
mov dword [ebp - 0x3fc], 0
push esi
push ebx
add esp, 4
xor esi, 0x29c7
add esi, 0x3660
or esi, 0xe66e
or esi, 0x15a0f
pop esi
push ecx
or ecx, 0x121d2
add ecx, 0xfa22
or ecx, 0xb734
pop ecx
push eax
or eax, 0x12088
or eax, 0x16712
and eax, 0x6858
call 0x10036e2c
add byte [esi], bh
inc esp
cmp byte [eax + 0x43], dl
xor eax, 0x834a4d43
les eax, [eax + ebx*2]
push esi
push esi
add esp, 4
add esi, 0x160be
pop esi
mov edx, 1
imul eax, edx, 0
lea ecx, [ebp + eax - 0xbf4]
mov dword [ebp - 0x15e0], ecx
push esi
and esi, 0x1657e
jmp 0x10036e5d
add esi, 0x3b7d
call 0x10036e6f
add byte [ebp + 0x38], al
inc ebp
inc edx
cmp al, 0x3c
add esp, 4
pop esi
push edi
xor edi, 0x1e0b
pop edi
push esi
and esi, 0x1205
pop esi
mov dword [ebp - 0x2050], 0xffffffff
push esi
push ebx
add esp, 4
or esi, 0x14ba5
pop esi
push ecx
push edi
add esp, 4
and ecx, 0x11408
pop ecx
push eax
xor eax, 0x14816
add eax, 0xe59b
add eax, 0x3db0
sub eax, 0x17bab
pop eax
mov edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4fc], edx
jmp 0x10036edc
mov eax, dword [ebp - 0x4fc]
add eax, 1
mov dword [ebp - 0x4fc], eax
push eax
or eax, 0xf9ae
pop eax
push eax
push esi
add esp, 4
xor eax, 0x11f15
or eax, 0x14606
xor eax, 0x14d1e
jmp 0x10036f01
pop eax
push ecx
push ecx
add esp, 4
or ecx, 0x31a5
pop ecx
mov ecx, dword [ebp - 0x4fc]
sub ecx, dword [ebp - 0x3f4]
cmp ecx, 0xffffffff
jb 0x10036f56
push esi
push ecx
add esp, 4
sub esi, 0xad3c
and esi, 0x1823f
jmp 0x10036f36
add esi, 0x10999
pop esi
push esi
xor esi, 0x3e6
pop esi
push edx
push eax
add esp, 4
xor edx, 0x139e1
pop edx
jmp 0x10037152
mov dword [ebp - 0xc9c], 7
mov edx, dword [ebp - 0x4fc]
mov dword [ebp - 0xae8], edx
push edx
push ecx
add esp, 4
sub edx, 0x15dfc
and edx, 0x11e1a
pop edx
push ecx
or ecx, 0x9358
or ecx, 0xab40
or ecx, 0x17d56
pop ecx
push eax
push edx
add esp, 4
add eax, 0x14763
pop eax
mov eax, dword [ebp - 0x15e0]
mov dword [ebp - 0xa64], eax
mov dword [ebp - 0xca0], 0
mov ecx, dword [ebp - 0x4fc]
cmp ecx, dword [ebp - 0x15e0]
jne 0x10036fd3
mov edx, dword [ebp - 0xca0]
mov dword [ebp - 0x15e8], edx
jmp 0x10037104
cmp dword [ebp - 0xc9c], 0
jle 0x100370f8
push ecx
add ecx, 0x59b4
or ecx, 0x9d7a
sub ecx, 0xad18
and ecx, 0x654c
pop ecx
push edx
and edx, 0x16175
call 0x1003700e
add byte [ecx + 0x36], cl
cmp al, 0x39
cmp cl, byte [ebx + 0x4d]
add esp, 4
pop edx
mov eax, dword [ebp - 0xae8]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xa64]
movzx eax, byte [edx]
cmp ecx, eax
je 0x10037094
push ecx
push ebx
add esp, 4
xor ecx, 0x9575
sub ecx, 0xb690
or ecx, 0x10cc4
xor ecx, 0xfa80
pop ecx
push edx
push eax
add esp, 4
add edx, 0x9c02
pop edx
push eax
sub eax, 0x11fb1
pop eax
mov ecx, dword [ebp - 0xae8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0xa64]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x1003707c
mov dword [ebp - 0x15e4], 1
jmp 0x10037086
mov dword [ebp - 0x15e4], 0xffffffff
mov edx, dword [ebp - 0x15e4]
mov dword [ebp - 0xca0], edx
jmp 0x100370f8
push edi
push esi
add esp, 4
and edi, 0xc9f5
pop edi
push ebx
or ebx, 0x2d86
xor ebx, 0x1c5d
pop ebx
push edx
push ecx
add esp, 4
sub edx, 0x16494
or edx, 0xfe25
or edx, 0x16f29
pop edx
mov eax, dword [ebp - 0xc9c]
sub eax, 1
mov dword [ebp - 0xc9c], eax
mov ecx, dword [ebp - 0xae8]
add ecx, 1
mov dword [ebp - 0xae8], ecx
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
jmp 0x10036fd3
mov eax, dword [ebp - 0xca0]
mov dword [ebp - 0x15e8], eax
cmp dword [ebp - 0x15e8], 0
jne 0x1003714d
push edx
push eax
add esp, 4
xor edx, 0x3e9f
add edx, 0x57ea
pop edx
push ebx
add ebx, 0x1526
and ebx, 0x2faf
or ebx, 0x15839
pop ebx
push edx
push edx
add esp, 4
add edx, 0x479a
pop edx
mov ecx, dword [ebp - 0x4fc]
mov dword [ebp - 0xae4], ecx
jmp 0x1003718e
jmp 0x10036ecd
push edi
push edi
add esp, 4
xor edi, 0x1f18
sub edi, 0xd0b2
xor edi, 0x5a67
or edi, 0x5786
pop edi
push ebx
xor ebx, 0xb870
add ebx, 0x12b80
xor ebx, 0xa7b0
pop ebx
mov dword [ebp - 0xae4], 0
push ecx
push edx
add esp, 4
or ecx, 0x121e
add ecx, 0x7de2
jmp 0x100371a5
xor ecx, 0xe11a
pop ecx
push edi
or edi, 0x18063
sub edi, 0x1630c
and edi, 0x8e2f
pop edi
mov byte [ebp - 0x87c], 0x45
mov byte [ebp - 0x87b], 0x78
mov byte [ebp - 0x87a], 0x69
mov byte [ebp - 0x879], 0x74
mov byte [ebp - 0x878], 0x50
mov byte [ebp - 0x877], 0x72
mov byte [ebp - 0x876], 0x6f
mov byte [ebp - 0x875], 0x63
mov byte [ebp - 0x874], 0x65
mov byte [ebp - 0x873], 0x73
mov byte [ebp - 0x872], 0x73
mov byte [ebp - 0x871], 0
push edx
push esi
add esp, 4
add edx, 0x57ee
xor edx, 0x54f0
and edx, 0xbb2d
pop edx
push edx
and edx, 0x13e6
pop edx
push ebx
push edi
add esp, 4
add ebx, 0x179dc
and ebx, 0x7c87
pop ebx
mov edx, 0x6b
mov word [ebp - 0x1754], dx
mov eax, 0x65
mov word [ebp - 0x1752], ax
mov ecx, 0x72
mov word [ebp - 0x1750], cx
mov edx, 0x6e
mov word [ebp - 0x174e], dx
mov eax, 0x65
mov word [ebp - 0x174c], ax
mov ecx, 0x6c
mov word [ebp - 0x174a], cx
mov edx, 0x33
mov word [ebp - 0x1748], dx
mov eax, 0x32
mov word [ebp - 0x1746], ax
mov ecx, 0x2e
mov word [ebp - 0x1744], cx
mov edx, 0x64
mov word [ebp - 0x1742], dx
mov eax, 0x6c
mov word [ebp - 0x1740], ax
mov ecx, 0x6c
mov word [ebp - 0x173e], cx
xor edx, edx
mov word [ebp - 0x173c], dx
push ecx
push eax
add esp, 4
xor ecx, 0x110a9
add ecx, 0x169a1
pop ecx
push ecx
push esi
add esp, 4
jmp 0x100372fc
pop ecx
push edx
add edx, 0x10d5d
add edx, 0x15277
add edx, 0xab00
pop edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x197c], eax
mov ecx, dword [ebp - 0x197c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1980], edx
mov eax, dword [ebp - 0x1980]
mov dword [ebp - 0x15ec], eax
push eax
xor eax, 0x175c7
and eax, 0x13e98
or eax, 0x11f6f
jmp 0x10037351
pop eax
push ebx
push ecx
add esp, 4
sub ebx, 0x11502
pop ebx
push edi
push ecx
add esp, 4
and edi, 0xfd51
pop edi
cmp dword [ebp - 0x15ec], 0
jne 0x10037382
mov dword [ebp - 0x2f0], 0
jmp 0x1003763e
mov ecx, dword [ebp - 0x15ec]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcac], eax
push edi
push eax
add esp, 4
xor edi, 0xcc11
pop edi
push ecx
push ecx
add esp, 4
and ecx, 0x32c
add ecx, 0x75b
sub ecx, 0x1b02
add ecx, 0xe859
pop ecx
push ebx
xor ebx, 0xdb36
pop ebx
cmp dword [ebp - 0xcac], 0
jne 0x100373de
mov dword [ebp - 0x2f0], 0
jmp 0x1003763e
mov ecx, dword [ebp - 0xcac]
mov dword [ebp - 0x500], ecx
push esi
add esi, 0x4f12
and esi, 0x15465
jmp 0x10037400
pop esi
push esi
call 0x10037412
add byte [ebp + 0x4a], al
inc edi
inc esi
dec ebx
xor esi, dword [esi]
inc esp
dec edx
add esp, 4
or esi, 0x1076b
pop esi
lea edx, [ebp - 0x1754]
mov dword [ebp - 0xca8], edx
mov eax, dword [ebp - 0x500]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xca4], ecx
xor edx, edx
mov word [ebp - 0x22c], dx
xor eax, eax
mov word [ebp - 0x128], ax
push ecx
call 0x10037459
add byte [0x3936474a], bh
dec ecx
dec ebp
inc esp
dec ecx
add esp, 4
sub ecx, 0x5608
jmp 0x10037468
pop ecx
push edx
push esi
add esp, 4
sub edx, 0x98fb
add edx, 0xa013
pop edx
mov ecx, dword [ebp - 0xca4]
mov dx, word [ecx]
mov word [ebp - 0x1046], dx
mov eax, dword [ebp - 0xca4]
add eax, 2
mov dword [ebp - 0xca4], eax
mov cx, word [ebp - 0x1046]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca8]
mov ax, word [edx]
mov word [ebp - 0x1048], ax
mov ecx, dword [ebp - 0xca8]
add ecx, 2
mov dword [ebp - 0xca8], ecx
mov dx, word [ebp - 0x1048]
mov word [ebp - 0x128], dx
push esi
push ecx
add esp, 4
or esi, 0x1072f
jmp 0x100374e6
and esi, 0x158a6
or esi, 0xb08
pop esi
push eax
sub eax, 0x129bf
add eax, 0x145d0
and eax, 0x111d1
pop eax
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x1003752a
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15f0], ecx
jmp 0x1003758d
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x10037449
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
cmp edx, eax
je 0x10037449
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
cmp ecx, edx
jge 0x10037577
mov dword [ebp - 0x15b0], 0xffffffff
jmp 0x10037581
mov dword [ebp - 0x15b0], 1
mov eax, dword [ebp - 0x15b0]
mov dword [ebp - 0x15f0], eax
cmp dword [ebp - 0x15f0], 0
jne 0x100375d6
push ecx
jmp 0x100375a0
call 0x100375ac
add byte [edx + 0x3e], al
aaa
xor cl, byte [ebp + 0x50]
add esp, 4
pop ecx
push eax
push esi
add esp, 4
add eax, 0xb9eb
or eax, 0xd072
and eax, 0x1e3a
pop eax
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x2f0], ecx
jmp 0x1003763e
push ebx
push eax
add esp, 4
call 0x100375ea
add byte [edx], dh
aaa
xor al, 0x3d
xor ecx, dword [esp + ecx*2 + 0x3a]
dec ebp
add esp, 4
jmp 0x100375f3
pop ebx
push eax
call 0x10037604
add byte [esi], dh
cmp al, 0x35
inc ecx
dec esi
dec ecx
inc ebp
xor eax, 0x5804c483
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xcac]
je 0x10037634
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x100373ea
mov dword [ebp - 0x2f0], 0
push edx
call 0x1003764f
add byte [eax + 0x3c], cl
cmp dword [edx], edi
cmp byte [esi + 0x46], al
xor al, byte [ebp + 0x41]
add esp, 4
sub edx, 0x1259d
pop edx
push edi
sub edi, 0x48ce
jmp 0x10037669
or edi, 0xa19c
pop edi
cmp dword [ebp - 0x2f0], 0
jne 0x10037f43
mov eax, 0x6b
mov word [ebp - 0x1790], ax
mov ecx, 0x65
mov word [ebp - 0x178e], cx
mov edx, 0x72
mov word [ebp - 0x178c], dx
mov eax, 0x6e
mov word [ebp - 0x178a], ax
mov ecx, 0x65
mov word [ebp - 0x1788], cx
mov edx, 0x6c
mov word [ebp - 0x1786], dx
mov eax, 0x33
mov word [ebp - 0x1784], ax
mov ecx, 0x32
mov word [ebp - 0x1782], cx
mov edx, 0x2e
mov word [ebp - 0x1780], dx
mov eax, 0x64
mov word [ebp - 0x177e], ax
mov ecx, 0x6c
mov word [ebp - 0x177c], cx
mov edx, 0x6c
mov word [ebp - 0x177a], dx
xor eax, eax
mov word [ebp - 0x1778], ax
push ebx
call 0x10037723
add byte [esi + eax*2], dh
cmp al, 0x4d
dec ebp
dec ebx
add esp, 4
jmp 0x1003772f
xor ebx, 0x157d4
add ebx, 0xd66d
pop ebx
push edx
push edx
add esp, 4
add edx, 0xf706
pop edx
mov byte [ebp - 0x898], 0x4c
mov byte [ebp - 0x897], 0x6f
mov byte [ebp - 0x896], 0x61
mov byte [ebp - 0x895], 0x64
mov byte [ebp - 0x894], 0x4c
mov byte [ebp - 0x893], 0x69
mov byte [ebp - 0x892], 0x62
mov byte [ebp - 0x891], 0x72
mov byte [ebp - 0x890], 0x61
mov byte [ebp - 0x88f], 0x72
mov byte [ebp - 0x88e], 0x79
mov byte [ebp - 0x88d], 0x57
mov byte [ebp - 0x88c], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1984], ecx
mov edx, dword [ebp - 0x1984]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1988], eax
mov ecx, dword [ebp - 0x1988]
mov dword [ebp - 0x15f4], ecx
push edi
push ecx
add esp, 4
and edi, 0x7edd
and edi, 0xc1d1
add edi, 0x81c
sub edi, 0x9779
pop edi
push eax
xor eax, 0xd930
xor eax, 0x4800
xor eax, 0x16322
pop eax
cmp dword [ebp - 0x15f4], 0
jne 0x10037815
mov dword [ebp - 0x754], 0
jmp 0x10037abc
mov edx, dword [ebp - 0x15f4]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcb8], ecx
push ecx
or ecx, 0xa129
jmp 0x10037834
pop ecx
push esi
push ebx
add esp, 4
add esi, 0x8c66
add byte [eax], al
pop esi
push edx
push ebx
add esp, 4
and edx, 0x53d7
pop edx
push ebx
push edx
add esp, 4
xor ebx, 0x99e1
pop ebx
cmp dword [ebp - 0xcb8], 0
jne 0x10037871
mov dword [ebp - 0x754], 0
jmp 0x10037abc
mov edx, dword [ebp - 0xcb8]
mov dword [ebp - 0x504], edx
push esi
push eax
add esp, 4
jmp 0x1003788b
call 0x10037897
add byte [eax + 0x42], dl
xor al, 0x44
cmp dword [ebx + eax*4 - 0x3c], eax
add al, 0x81
out dx, al
loopne 0x1003783e
add byte [eax], al
sub esi, 0x1735
pop esi
push ebx
and ebx, 0x30ab
pop ebx
lea eax, [ebp - 0x1790]
mov dword [ebp - 0xcb4], eax
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcb0], edx
xor eax, eax
mov word [ebp - 0x230], ax
xor ecx, ecx
mov word [ebp - 0x44], cx
push eax
call 0x100378ea
add byte [esi + 0x4b], al
push eax
push eax
cmp edi, dword [eax + edx*2]
dec ebp
dec esi
xor al, byte [ebx - 0x377efb3c]
push esi
outsb dx, byte [esi]
add dword [eax], eax
jmp 0x100378fc
pop eax
push esi
add esi, 0x114f0
and esi, 0x7eeb
pop esi
mov edx, dword [ebp - 0xcb0]
mov ax, word [edx]
mov word [ebp - 0x104a], ax
mov ecx, dword [ebp - 0xcb0]
add ecx, 2
mov dword [ebp - 0xcb0], ecx
mov dx, word [ebp - 0x104a]
mov word [ebp - 0x230], dx
mov eax, dword [ebp - 0xcb4]
mov cx, word [eax]
mov word [ebp - 0x104c], cx
mov edx, dword [ebp - 0xcb4]
add edx, 2
mov dword [ebp - 0xcb4], edx
mov ax, word [ebp - 0x104c]
mov word [ebp - 0x44], ax
push edx
push ebx
add esp, 4
sub edx, 0x9043
add edx, 0xc1ed
call 0x10037980
add byte [edi + 0x3b], cl
xor bh, byte [esi]
xor al, 0x4f
add esp, 4
call 0x10037990
add byte [0x384d3c3f], dh
cmp eax, 0x4c48336
pop edx
movzx ecx, word [ebp - 0x44]
test ecx, ecx
jne 0x100379b1
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x44]
sub edx, eax
mov dword [ebp - 0x15fc], edx
jmp 0x10037a0b
movzx ecx, word [ebp - 0x230]
movzx edx, word [ebp - 0x44]
cmp ecx, edx
je 0x100378d9
movzx eax, word [ebp - 0x230]
xor eax, 0x20
movzx ecx, word [ebp - 0x44]
cmp eax, ecx
je 0x100378d9
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x44]
cmp edx, eax
jge 0x100379f5
mov dword [ebp - 0x15f8], 0xffffffff
jmp 0x100379ff
mov dword [ebp - 0x15f8], 1
mov ecx, dword [ebp - 0x15f8]
mov dword [ebp - 0x15fc], ecx
cmp dword [ebp - 0x15fc], 0
jne 0x10037a54
push ecx
or ecx, 0x7c40
pop ecx
push edx
and edx, 0x103f9
sub edx, 0x13b44
call 0x10037a36
add byte [esi + 0x3b], al
inc esp
dec ecx
cmp dh, byte [0x4c48332]
pop edx
push edx
push ebx
add esp, 4
xor edx, 0x1363a
pop edx
mov edx, dword [ebp - 0x504]
mov dword [ebp - 0x754], edx
jmp 0x10037abc
push esi
push esi
add esp, 4
add esi, 0xb1b7
pop esi
push edx
push eax
add esp, 4
xor edx, 0x16fa
call 0x10037a77
add byte [edi + 0x3b], cl
dec edx
xor eax, 0xc4834f35
add al, 0x81
and byte [ecx + eax], 0
jmp 0x10037a85
pop edx
mov eax, dword [ebp - 0x504]
mov ecx, dword [eax]
mov dword [ebp - 0x504], ecx
mov edx, dword [ebp - 0x504]
cmp edx, dword [ebp - 0xcb8]
je 0x10037ab2
mov eax, dword [ebp - 0x504]
cmp dword [eax + 0x30], 0
jne 0x1003787d
mov dword [ebp - 0x754], 0
cmp dword [ebp - 0x754], 0
jne 0x10037b06
push esi
push edx
add esp, 4
add esi, 0x14994
jmp 0x10037ad6
xor esi, 0x7b22
pop esi
push esi
xor esi, 0x11340
and esi, 0x63fe
or esi, 0x4d1c
xor esi, 0x2bbf
pop esi
mov dword [ebp - 0x7a0], 0
jmp 0x1003862e
push esi
push ecx
add esp, 4
sub esi, 0x318
pop esi
push edx
or edx, 0x4f36
add edx, 0xc05
add edx, 0x128f2
call 0x10037b34
add byte [ebx + edi], dh
dec esp
inc esp
cmp byte [ebx], dh
dec eax
dec ebp
cmp eax, dword [ebx - 0x74a5fb3c]
lea ebp, [eax + edi*8 + 0x518bffff]
sbb byte [ecx - 0x3a76b], cl
inc edi
test dword [eax + edi*8 + 0xffff], ebx
add byte [eax], al
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x1600], eax
cmp dword [ebp - 0x1600], 0
jne 0x10037b77
mov ecx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], ecx
jmp 0x10037e68
mov edx, dword [ebp - 0x1600]
mov eax, dword [ebp - 0x3a8]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1604], eax
jne 0x10037b9f
mov ecx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], ecx
jmp 0x10037e68
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1604]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x10037bd1
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], eax
jmp 0x10037e68
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [ebp - 0x1608]
mov dword [ebp - 0x758], ecx
jne 0x10037bf6
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], edx
jmp 0x10037e68
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x198c], ecx
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x3a8]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1990], eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x3a8]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1994], edx
mov dword [ebp - 0x75c], 0
jmp 0x10037c50
mov eax, dword [ebp - 0x75c]
add eax, 1
mov dword [ebp - 0x75c], eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x75c]
cmp edx, dword [ecx + 0x18]
jae 0x10037e5c
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x198c]
mov edx, dword [ebp - 0x3a8]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x760], edx
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x1990]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1994]
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d20], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x10037cc0
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x10037d72
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x898]
test eax, eax
je 0x10037d72
push edx
push edi
add esp, 4
and edx, 0x12a90
pop edx
push eax
push ecx
add esp, 4
xor eax, 0xb7d
xor eax, 0x137b7
or eax, 0xe94e
add eax, 0x4d45
pop eax
push ecx
add ecx, 0x151f0
pop ecx
mov ecx, dword [ebp - 0x760]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x898]
cmp edx, ecx
je 0x10037d64
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x898]
cmp eax, edx
jne 0x10037d6b
jmp 0x10037cb1
jmp 0x10037d72
push ecx
push edi
add esp, 4
add ecx, 0xe543
pop ecx
push edx
add edx, 0x556f
xor edx, 0x1645e
and edx, 0x10673
call 0x10037da0
add byte [esi], bh
inc esp
aas
dec ebp
inc esp
inc edx
xor al, 0x83
les eax, [edx + ebx*2]
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x898]
cmp ecx, eax
jne 0x10037dd1
mov dword [ebp - 0xcbc], 0
jmp 0x10037e40
push ebx
push ecx
add esp, 4
xor ebx, 0x87de
add ebx, 0xefe9
pop ebx
push ecx
add ecx, 0x16105
pop ecx
push ecx
push ecx
add esp, 4
sub ecx, 0x120d1
xor ecx, 0x3f54
or ecx, 0x10b16
pop ecx
mov ecx, dword [ebp - 0x760]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x898]
or ecx, 0x20
cmp edx, ecx
jge 0x10037e36
mov dword [ebp - 0xcbc], 0xffffffff
jmp 0x10037e40
mov dword [ebp - 0xcbc], 1
cmp dword [ebp - 0xcbc], 0
jne 0x10037e57
mov edx, dword [ebp - 0x1d20]
mov dword [ebp - 0x3e0], edx
jmp 0x10037e68
jmp 0x10037c41
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], eax
cmp dword [ebp - 0x3e0], 0
je 0x10037f43
push esi
and esi, 0x7d1
jmp 0x10037e84
pop esi
push esi
sub esi, 0xca5c
pop esi
push ebx
add ebx, 0xc81e
sub ebx, 0x2803
pop ebx
push edi
push ecx
add esp, 4
xor edi, 0x4328
pop edi
mov ecx, dword [ebp - 0x3e0]
mov dword [ebp - 0x1998], ecx
push ebx
push ecx
add esp, 4
sub ebx, 0x158c8
or ebx, 0x15a62
pop ebx
push edi
push edx
add esp, 4
and edi, 0x2cb3
and edi, 0xcf26
pop edi
push ecx
or ecx, 0x2687
or ecx, 0x17569
pop ecx
mov edx, dword [ebp - 0x1998]
mov dword [ebp - 0x199c], edx
lea eax, [ebp - 0x1754]
push eax
call dword [ebp - 0x199c]
test eax, eax
jne 0x10037f43
push esi
push esi
add esp, 4
xor esi, 0xcdbc
xor esi, 0xfab6
xor esi, 0x10ca1
pop esi
push ecx
and ecx, 0xa287
sub ecx, 0xeb6c
and ecx, 0xce12
sub ecx, 0x9a39
pop ecx
mov dword [ebp - 0x7a0], 0
jmp 0x1003862e
push eax
add eax, 0xcc11
call 0x10037f5a
add byte [eax + 0x38], cl
inc edi
dec edi
dec edx
dec edx
dec ebx
xor al, byte [edi + 0x41]
add esp, 4
pop eax
push ecx
or ecx, 0x1d7
or ecx, 0xddc3
jmp 0x10037f74
pop ecx
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19a0], ecx
mov edx, dword [ebp - 0x19a0]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19a4], eax
mov ecx, dword [ebp - 0x19a4]
mov dword [ebp - 0x160c], ecx
push ecx
or ecx, 0x17db2
pop ecx
push edi
push edx
add esp, 4
xor edi, 0x1203d
pop edi
push esi
push edi
add esp, 4
call 0x10037fc5
add byte [esi], dh
dec eax
inc edi
cmp eax, 0x484b4c3b
aas
add esp, 4
sub esi, 0x763f
pop esi
cmp dword [ebp - 0x160c], 0
jne 0x10037fe7
mov dword [ebp - 0x2f0], 0
jmp 0x1003828e
mov edx, dword [ebp - 0x160c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcc8], ecx
push ebx
xor ebx, 0x10493
call 0x1003800f
add byte [eax + 0x40], al
inc ebx
inc eax
xor al, 0x42
dec ebp
dec eax
dec edx
add esp, 4
and ebx, 0xef9e
and ebx, 0x5972
pop ebx
push ecx
push edx
add esp, 4
xor ecx, 0x3820
pop ecx
cmp dword [ebp - 0xcc8], 0
jne 0x10038043
mov dword [ebp - 0x2f0], 0
jmp 0x1003828e
mov edx, dword [ebp - 0xcc8]
mov dword [ebp - 0x508], edx
push edx
xor edx, 0xf5aa
pop edx
push ebx
push edi
add esp, 4
jmp 0x10038064
xor ebx, 0x14207
call 0x10038077
add byte [ebx + esi], bh
inc eax
dec esp
cmp eax, 0xc483324c
add al, 0x81
jmp 0x1003808d
mov ecx, dword [ebp - 0x508]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc0], edx
xor eax, eax
mov word [ebp - 0x234], ax
xor ecx, ecx
mov word [ebp - 0x48], cx
push ecx
or ecx, 0x3013
or ecx, 0x127e3
jmp 0x100380bd
pop ecx
push ecx
push edx
add esp, 4
jmp 0x100380ca
or ecx, 0xd7a
xor ecx, 0x14cca
or ecx, 0x179ba
pop ecx
mov edx, dword [ebp - 0xcc0]
mov ax, word [edx]
mov word [ebp - 0x104e], ax
mov ecx, dword [ebp - 0xcc0]
add ecx, 2
mov dword [ebp - 0xcc0], ecx
mov dx, word [ebp - 0x104e]
mov word [ebp - 0x234], dx
mov eax, dword [ebp - 0xcc4]
mov cx, word [eax]
mov word [ebp - 0x1050], cx
mov edx, dword [ebp - 0xcc4]
add edx, 2
mov dword [ebp - 0xcc4], edx
mov ax, word [ebp - 0x1050]
mov word [ebp - 0x48], ax
push ebx
push edx
add esp, 4
and ebx, 0xd1d2
add ebx, 0x103c1
or ebx, 0x32dc
pop ebx
push esi
xor esi, 0x609e
or esi, 0x1735
pop esi
push edx
push ecx
add esp, 4
and edx, 0x11358
pop edx
movzx ecx, word [ebp - 0x48]
test ecx, ecx
jne 0x10038183
movzx edx, word [ebp - 0x234]
movzx eax, word [ebp - 0x48]
sub edx, eax
mov dword [ebp - 0x1614], edx
jmp 0x100381dd
movzx ecx, word [ebp - 0x234]
movzx edx, word [ebp - 0x48]
cmp ecx, edx
je 0x100380ab
movzx eax, word [ebp - 0x234]
xor eax, 0x20
movzx ecx, word [ebp - 0x48]
cmp eax, ecx
je 0x100380ab
movzx edx, word [ebp - 0x234]
movzx eax, word [ebp - 0x48]
cmp edx, eax
jge 0x100381c7
mov dword [ebp - 0x1610], 0xffffffff
jmp 0x100381d1
mov dword [ebp - 0x1610], 1
mov ecx, dword [ebp - 0x1610]
mov dword [ebp - 0x1614], ecx
cmp dword [ebp - 0x1614], 0
jne 0x10038226
push eax
push esi
add esp, 4
call 0x100381f7
add byte [esi + ecx*2 + 0x4b], al
cmp cl, byte [edi + 0x38]
add esp, 4
add eax, 0xe3dd
sub eax, 0x11316
call 0x10038214
add byte [ebx], bh
cmp bh, byte [ebx]
inc eax
cmp cl, byte [ebp + 0x3f]
cmp eax, 0x5804c483
mov edx, dword [ebp - 0x508]
mov dword [ebp - 0x2f0], edx
jmp 0x1003828e
push edx
jmp 0x10038230
call 0x1003823c
add byte [ebx], bh
cmp al, 0x3f
inc esi
inc esi
xor al, 0x83
les eax, [edx + ebx*2]
push edi
or edi, 0xd687
jmp 0x10038250
jmp 0x10038257
pop edi
mov eax, dword [ebp - 0x508]
mov ecx, dword [eax]
mov dword [ebp - 0x508], ecx
mov edx, dword [ebp - 0x508]
cmp edx, dword [ebp - 0xcc8]
je 0x10038284
mov eax, dword [ebp - 0x508]
cmp dword [eax + 0x30], 0
jne 0x1003804f
mov dword [ebp - 0x2f0], 0
push edx
call 0x1003829e
add byte [0x4746343f], dh
cmp al, byte [edi + 0x3f]
xor eax, 0x8104c483
retf 0xc3d
push esi
add esi, 0x15ba8
xor esi, 0x6d16
pop esi
push ebx
sub ebx, 0x1188d
sub ebx, 0xf51
or ebx, 0x2298
call 0x1003865c
add byte [ebx], dh
inc esp
aaa
cmp dword [ebx + 0x48], ecx
cmp eax, dword [ebx - 0x74a4fb3c]
xchg ebp, eax
add al, 0xfc
invalid