Function at 0x4959d0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x39c
mov dword [ebp - 0x188], 1
mov eax, 0x11
mov dword [ebp - 0x180], 0x42
mov word [ebp - 0x17c], ax
mov eax, 0xd
mov word [ebp - 0x17a], ax
mov eax, 4
mov word [ebp - 0x178], ax
mov eax, 0x16
mov word [ebp - 0x176], ax
mov eax, 3
mov dword [ebp - 0x14], ecx
mov ecx, 0x15
mov word [ebp - 0x174], cx
mov word [ebp - 0x172], ax
mov eax, 0x10
mov word [ebp - 0x170], ax
mov eax, 7
mov word [ebp - 0x16e], ax
mov eax, 0x1e
mov word [ebp - 0x16c], ax
mov eax, 0xf
mov word [ebp - 0x16a], ax
mov eax, 0x21
push ebx
push esi
push edi
mov edi, 0x2b
mov dword [ebp - 0x10], edx
mov word [ebp - 0x168], di
mov edx, 0x2d
mov word [ebp - 0x166], ax
mov ebx, 0x31
mov eax, 0x30
mov esi, 0x36
mov word [ebp - 0x164], ax
mov eax, 0x24
mov word [ebp - 0x162], dx
mov word [ebp - 0x160], bx
mov word [ebp - 0x15e], dx
mov word [ebp - 0x15c], ax
mov eax, 0x1e
mov word [ebp - 0x15a], si
mov word [ebp - 0x158], ax
mov eax, 0x26
mov word [ebp - 0x156], cx
mov ecx, 0x27
mov word [ebp - 0x154], di
mov edi, 0x2c
mov word [ebp - 0x152], di
mov word [ebp - 0x150], ax
mov eax, 0x35
mov word [ebp - 0x14e], dx
mov edx, 0x37
mov word [ebp - 0x14c], ax
mov eax, 0x1e
mov word [ebp - 0x14a], bx
mov word [ebp - 0x148], ax
mov eax, 1
mov word [ebp - 0x146], ax
mov eax, 0x30
mov word [ebp - 0x144], dx
mov word [ebp - 0x142], ax
mov word [ebp - 0x140], ax
mov eax, 0x14
mov word [ebp - 0x13e], cx
mov word [ebp - 0x13c], di
mov word [ebp - 0x13a], si
mov word [ebp - 0x138], ax
mov eax, 0x30
mov word [ebp - 0x136], cx
mov word [ebp - 0x134], ax
mov eax, 0x2b
mov word [ebp - 0x132], bx
mov word [ebp - 0x130], ax
mov eax, 0x2d
mov word [ebp - 0x12e], ax
mov eax, 0x1e
mov word [ebp - 0x12c], di
mov word [ebp - 0x12a], ax
mov eax, 0x10
mov word [ebp - 0x128], ax
mov eax, 0x42
mov word [ebp - 0x126], dx
mov word [ebp - 0x124], di
mov word [ebp - 0x122], ax
movzx eax, word [0x40343c]
xor eax, 0x42
mov word [ebp - 0x120], ax
movzx eax, word [0x40343e]
xor eax, 0x42
mov word [ebp - 0x11e], ax
movzx eax, word [0x403440]
xor eax, 0x42
mov word [ebp - 0x11c], ax
movzx eax, word [0x403442]
xor eax, 0x42
mov word [ebp - 0x11a], ax
movzx eax, word [0x403444]
xor eax, 0x42
mov word [ebp - 0x118], ax
movzx eax, word [0x403446]
xor eax, 0x42
mov word [ebp - 0x116], ax
movzx eax, word [0x403448]
xor eax, 0x42
mov word [ebp - 0x114], ax
movzx eax, word [0x40344a]
xor eax, 0x42
mov word [ebp - 0x112], ax
movzx eax, word [0x40344c]
xor eax, 0x42
mov word [ebp - 0x110], ax
movzx eax, word [0x40344e]
xor eax, 0x42
mov word [ebp - 0x10e], ax
movzx eax, word [0x403450]
xor eax, 0x42
mov word [ebp - 0x10c], ax
movzx eax, word [0x403452]
xor eax, 0x42
mov word [ebp - 0x10a], ax
movzx eax, word [0x403454]
xor eax, 0x42
mov word [ebp - 0x108], ax
movzx eax, word [0x403456]
xor eax, 0x42
mov word [ebp - 0x106], ax
movzx eax, word [0x403458]
xor eax, 0x42
mov word [ebp - 0x104], ax
movzx eax, word [0x40345a]
xor eax, 0x42
mov word [ebp - 0x102], ax
movzx eax, word [0x40345c]
xor eax, 0x42
mov word [ebp - 0x100], ax
movzx eax, word [0x40345e]
xor eax, 0x42
mov word [ebp - 0xfe], ax
movzx eax, word [0x403460]
xor eax, 0x42
mov word [ebp - 0xfc], ax
movzx eax, word [0x403462]
xor eax, 0x42
mov word [ebp - 0xfa], ax
movzx eax, word [0x403464]
xor eax, 0x42
mov word [ebp - 0xf8], ax
movzx eax, word [0x403466]
xor eax, 0x42
mov word [ebp - 0xf6], ax
movzx eax, word [0x403468]
xor eax, 0x42
mov word [ebp - 0xf4], ax
movzx eax, word [0x40346a]
xor eax, 0x42
mov word [ebp - 0xf2], ax
movzx eax, word [0x40346c]
xor eax, 0x42
mov word [ebp - 0xf0], ax
movzx eax, word [0x40346e]
xor eax, 0x42
mov word [ebp - 0xee], ax
movzx eax, word [0x403470]
xor eax, 0x42
mov word [ebp - 0xec], ax
movzx eax, word [0x403472]
xor eax, 0x42
mov word [ebp - 0xea], ax
movzx eax, word [0x403474]
xor eax, 0x42
mov word [ebp - 0xe8], ax
movzx eax, word [0x403476]
xor eax, 0x42
mov word [ebp - 0xe6], ax
movzx eax, word [0x403478]
xor eax, 0x42
mov word [ebp - 0xe4], ax
movzx eax, word [0x40347a]
xor eax, 0x42
mov word [ebp - 0xe2], ax
movzx eax, word [0x40347c]
xor eax, 0x42
mov word [ebp - 0xe0], ax
movzx eax, word [0x40347e]
xor eax, 0x42
mov word [ebp - 0xde], ax
movzx eax, word [0x403480]
xor eax, 0x42
mov word [ebp - 0xdc], ax
movzx eax, word [0x403482]
xor eax, 0x42
mov word [ebp - 0xda], ax
movzx eax, word [0x403484]
xor eax, 0x42
mov word [ebp - 0xd8], ax
movzx eax, word [0x403486]
xor eax, 0x42
mov word [ebp - 0xd6], ax
movzx eax, word [0x403488]
xor eax, 0x42
mov word [ebp - 0xd4], ax
movzx eax, word [0x40348a]
xor eax, 0x42
mov word [ebp - 0xd2], ax
movzx eax, word [0x40348c]
xor eax, 0x42
mov word [ebp - 0xd0], ax
movzx eax, word [0x40348e]
xor eax, 0x42
mov word [ebp - 0xce], ax
movzx eax, word [0x403490]
xor eax, 0x42
mov word [ebp - 0xcc], ax
movzx eax, word [0x403492]
xor eax, 0x42
mov word [ebp - 0xca], ax
movzx eax, word [0x403494]
xor eax, 0x42
mov word [ebp - 0xc8], ax
xor eax, eax
mov word [ebp - 0xc6], ax
xor edx, edx
mov ax, word [ebp - 0x17c]
nop dword [eax]
mov ax, word [ebp + edx*2 - 0x17c]
movzx ecx, ax
movzx eax, word [ebp - 0x180]
xor ecx, eax
mov word [ebp + edx*2 - 0x17c], cx
inc edx
cmp edx, 0x5b
jb 0x495ef0
mov ebx, dword [0x4f083c]
xor eax, eax
mov word [ebp - 0xc6], ax
test ebx, ebx
jne 0x495fb1
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 8], eax
mov edx, eax
mov dword [ebp - 4], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0xc], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x495f98
nop
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 0xc]
imul eax, eax, 0x1000193
mov dword [ebp - 0xc], eax
cmp edi, ebx
jne 0x495f60
cmp eax, 0x39794115
je 0x4969cf
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 4], ecx
cmp eax, edx
je 0x495fa9
cmp dword [ecx + 0x18], 0
jne 0x495f41
xor ebx, ebx
mov dword [0x4f083c], ebx
mov eax, dword [0x4f8bf4]
test eax, eax
jne 0x49604e
test ebx, ebx
je 0x496047
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x1c], eax
lea eax, [ecx + ebx]
mov dword [ebp - 0xc], eax
cmp eax, ebx
je 0x496047
xor ecx, ecx
mov dword [ebp - 4], ecx
cmp dword [eax + 0x18], ecx
je 0x496047
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 8], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x496035
movsx ecx, dl
lea esi, [esi + 1]
sub dl, 0x41
mov eax, ecx
or eax, 0x20
cmp dl, 0x19
mov dl, byte [esi - 1]
cmova eax, ecx
xor eax, edi
imul edi, eax, 0x1000193
test dl, dl
jne 0x496000
cmp edi, 0xd7a6bc32
je 0x4969da
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
cmp ecx, dword [edx + 0x18]
jne 0x495ff0
xor eax, eax
mov dword [0x4f8bf4], eax
lea ecx, [ebp - 0x18c]
push ecx
lea ecx, [ebp - 0x24]
push ecx
push 0
push 0x2001f
push 0
push 0
push 0
lea ecx, [ebp - 0x17c]
push ecx
push 0x80000001
call eax
xor ecx, ecx
test eax, eax
jne 0x497001
mov dword [ebp - 0xc4], 0x13
mov eax, dword [ebp - 0xc4]
xor eax, 0x7b
mov word [ebp - 0xc0], ax
mov eax, dword [ebp - 0xc4]
inc eax
xor eax, 0x32
mov word [ebp - 0xbe], ax
mov eax, dword [ebp - 0xc4]
add eax, 2
xor eax, 0x43
mov word [ebp - 0xbc], ax
mov eax, dword [ebp - 0xc4]
add eax, 3
xor eax, 0x35
mov word [ebp - 0xba], ax
mov eax, dword [ebp - 0xc4]
add eax, 4
xor eax, 0x46
mov word [ebp - 0xb8], ax
mov eax, dword [ebp - 0xc4]
add eax, 5
xor eax, 0x39
mov word [ebp - 0xb6], ax
mov eax, dword [ebp - 0xc4]
add eax, 6
xor eax, 0x46
mov word [ebp - 0xb4], ax
mov eax, dword [ebp - 0xc4]
add eax, 7
xor eax, 0x43
mov word [ebp - 0xb2], ax
mov eax, dword [ebp - 0xc4]
add eax, 8
xor eax, 0x43
mov word [ebp - 0xb0], ax
mov eax, dword [ebp - 0xc4]
add eax, 9
xor eax, 0x2d
mov word [ebp - 0xae], ax
mov eax, dword [ebp - 0xc4]
add eax, 0xa
xor eax, 0x46
mov word [ebp - 0xac], ax
mov eax, dword [ebp - 0xc4]
add eax, 0xb
xor eax, 0x32
mov word [ebp - 0xaa], ax
mov eax, dword [ebp - 0xc4]
add eax, 0xc
xor eax, 0x36
mov word [ebp - 0xa8], ax
mov eax, dword [ebp - 0xc4]
add eax, 0xd
xor eax, 0x36
mov word [ebp - 0xa6], ax
mov eax, dword [ebp - 0xc4]
add eax, 0xe
xor eax, 0x2d
mov word [ebp - 0xa4], ax
mov eax, dword [ebp - 0xc4]
add eax, 0xf
xor eax, 0x34
mov word [ebp - 0xa2], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x10
xor eax, 0x33
mov word [ebp - 0xa0], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x11
xor eax, 0x46
mov word [ebp - 0x9e], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x12
xor eax, 0x36
mov word [ebp - 0x9c], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x13
xor eax, 0x2d
mov word [ebp - 0x9a], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x14
xor eax, 0x42
mov word [ebp - 0x98], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x15
xor eax, 0x46
mov word [ebp - 0x96], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x16
xor eax, 0x44
mov word [ebp - 0x94], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x17
xor eax, 0x37
mov word [ebp - 0x92], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x18
xor eax, 0x2d
mov word [ebp - 0x90], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x19
xor eax, 0x38
mov word [ebp - 0x8e], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x1a
xor eax, 0x33
mov word [ebp - 0x8c], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x1b
xor eax, 0x38
mov word [ebp - 0x8a], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x1c
xor eax, 0x44
mov word [ebp - 0x88], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x1d
xor eax, 0x41
mov word [ebp - 0x86], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x1e
xor eax, 0x45
mov word [ebp - 0x84], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x1f
xor eax, 0x32
mov word [ebp - 0x82], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x20
xor eax, 0x36
mov word [ebp - 0x80], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x21
xor eax, 0x39
mov word [ebp - 0x7e], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x22
xor eax, 0x45
mov word [ebp - 0x7c], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x23
xor eax, 0x31
mov word [ebp - 0x7a], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x24
xor eax, 0x31
mov word [ebp - 0x78], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x25
xor eax, 0x7d
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0xc4]
add eax, 0x26
mov word [ebp - 0x74], ax
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x40348e]
add eax, 0x27
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x72], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x403490]
add eax, 0x28
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x70], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x403492]
add eax, 0x29
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x6e], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x403494]
add eax, 0x2a
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x6c], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x403496]
add eax, 0x2b
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x6a], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x403498]
add eax, 0x2c
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x68], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x40349a]
add eax, 0x2d
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x66], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x40349c]
add eax, 0x2e
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x64], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x40349e]
add eax, 0x2f
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x62], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034a0]
add eax, 0x30
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x60], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034a2]
add eax, 0x31
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x5e], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034a4]
add eax, 0x32
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x5c], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034a6]
add eax, 0x33
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x5a], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034a8]
add eax, 0x34
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x58], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034aa]
add eax, 0x35
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x56], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034ac]
add eax, 0x36
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x54], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034ae]
add eax, 0x37
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x52], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034b0]
add eax, 0x38
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x50], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034b2]
add eax, 0x39
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x4e], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034b4]
add eax, 0x3a
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x4c], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034b6]
add eax, 0x3b
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x4a], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034b8]
add eax, 0x3c
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x48], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034ba]
add eax, 0x3d
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x46], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034bc]
add eax, 0x3e
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x44], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034be]
add eax, 0x3f
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x42], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034c0]
add eax, 0x40
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x40], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034c2]
add eax, 0x41
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x3e], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034c4]
add eax, 0x42
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x3c], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034c6]
add eax, 0x43
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x3a], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034c8]
add eax, 0x44
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x38], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034ca]
add eax, 0x45
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x36], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034cc]
add eax, 0x46
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x34], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034ce]
add eax, 0x47
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x32], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034d0]
add eax, 0x48
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x30], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034d2]
add eax, 0x49
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x2e], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034d4]
add eax, 0x4a
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x2c], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034d6]
add eax, 0x4b
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x2a], cx
mov eax, dword [ebp - 0xc4]
movzx ecx, word [0x4034d8]
add eax, 0x4c
movzx eax, ax
xor ecx, eax
xor eax, eax
mov word [ebp - 0x28], cx
xor edx, edx
mov word [ebp - 0x26], ax
mov ax, word [ebp - 0xc0]
nop word [eax + eax]
mov ax, word [ebp + edx*2 - 0xc0]
mov ecx, dword [ebp - 0xc4]
add ecx, edx
movzx eax, ax
xor ecx, eax
mov word [ebp + edx*2 - 0xc0], cx
inc edx
cmp edx, 0x4d
jb 0x496720
mov ebx, dword [0x4f083c]
xor eax, eax
mov word [ebp - 0x26], ax
cmp dword [ebp - 0x14], eax
je 0x496a48
test ebx, ebx
jne 0x4967f1
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 0x10], eax
mov edx, eax
mov dword [ebp - 4], ecx
nop dword [eax + eax]
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 8], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4967d8
nop
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 8]
imul eax, eax, 0x1000193
mov dword [ebp - 8], eax
cmp edi, ebx
jne 0x4967a0
cmp eax, 0x39794115
je 0x4969f8
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 4], ecx
cmp eax, edx
je 0x4967e9
cmp dword [ecx + 0x18], 0
jne 0x496780
xor ebx, ebx
mov dword [0x4f083c], ebx
mov eax, dword [0x4f8be8]
test eax, eax
jne 0x496883
test ebx, ebx
je 0x49687c
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x49687c
xor ecx, ecx
mov dword [ebp - 4], ecx
cmp dword [eax + 0x18], ecx
je 0x49687c
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 8], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x49686a
movsx ecx, dl
lea esi, [esi + 1]
sub dl, 0x41
mov eax, ecx
or eax, 0x20
cmp dl, 0x19
mov dl, byte [esi - 1]
cmova eax, ecx
xor eax, edi
imul edi, eax, 0x1000193
test dl, dl
jne 0x496835
mov ecx, dword [ebp - 4]
cmp edi, 0x5f017c9c
je 0x496a03
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
inc ecx
add eax, 4
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
cmp ecx, dword [edx + 0x18]
jne 0x496825
xor eax, eax
mov dword [0x4f8be8], eax
lea ecx, [ebp - 0xc0]
push ecx
push dword [ebp - 0x24]
call eax
mov ebx, dword [0x4f083c]
test ebx, ebx
jne 0x496924
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 0x10], eax
mov edx, eax
mov dword [ebp - 4], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 8], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x49690b
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 8]
imul eax, eax, 0x1000193
mov dword [ebp - 8], eax
cmp edi, ebx
jne 0x4968d3
cmp eax, 0x39794115
je 0x496a20
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 4], ecx
cmp eax, edx
je 0x49691c
cmp dword [ecx + 0x18], 0
jne 0x4968b5
xor ebx, ebx
mov dword [0x4f083c], ebx
mov eax, dword [0x4f8bf0]
test eax, eax
jne 0x4969be
test ebx, ebx
je 0x4969b7
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x4969b7
xor ecx, ecx
mov dword [ebp - 4], ecx
cmp dword [eax + 0x18], ecx
je 0x4969b7
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 8], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4969a5
movsx ecx, dl
lea esi, [esi + 1]
sub dl, 0x41
mov eax, ecx
or eax, 0x20
cmp dl, 0x19
mov dl, byte [esi - 1]
cmova eax, ecx
xor eax, edi
imul edi, eax, 0x1000193
test dl, dl
jne 0x496970
mov ecx, dword [ebp - 4]
cmp edi, 0x6b36a56a
je 0x496a2b
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
inc ecx
add eax, 4
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
cmp ecx, dword [edx + 0x18]
jne 0x496960
xor eax, eax
mov dword [0x4f8bf0], eax
push dword [ebp - 0x24]
call eax
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x18]
jmp 0x495fab
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 4]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, ebx
add eax, ebx
movzx eax, word [eax + edx*2]
mov eax, dword [ecx + eax*4]
add eax, ebx
jmp 0x496049
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x18]
jmp 0x4967eb
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
jmp 0x49687e
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x18]
jmp 0x49691e
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
jmp 0x4969b9
mov dword [ebp - 0x184], 0x104
test ebx, ebx
jne 0x496ae1
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 0xc], eax
mov edx, eax
mov dword [ebp - 4], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 8], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x496ac8
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 8]
imul eax, eax, 0x1000193
mov dword [ebp - 8], eax
cmp edi, ebx
jne 0x496a90
cmp eax, 0x39794115
je 0x496d06
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 4], ecx
cmp eax, edx
je 0x496ad9
cmp dword [ecx + 0x18], 0
jne 0x496a72
xor ebx, ebx
mov dword [0x4f083c], ebx
mov eax, dword [0x4f8bfc]
test eax, eax
jne 0x496b7e
test ebx, ebx
je 0x496b77
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0xc], eax
cmp eax, ebx
je 0x496b77
xor ecx, ecx
mov dword [ebp - 4], ecx
cmp dword [eax + 0x18], ecx
je 0x496b77
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 8], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x496b65
movsx ecx, dl
lea esi, [esi + 1]
sub dl, 0x41
mov eax, ecx
or eax, 0x20
cmp dl, 0x19
mov dl, byte [esi - 1]
cmova eax, ecx
xor eax, edi
imul edi, eax, 0x1000193
test dl, dl
jne 0x496b30
mov ecx, dword [ebp - 4]
cmp edi, 0xef3e6846
je 0x496d11
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
cmp ecx, dword [edx + 0x18]
jne 0x496b20
xor eax, eax
mov dword [0x4f8bfc], eax
lea ecx, [ebp - 0x184]
push ecx
lea ecx, [ebp - 0x398]
push ecx
lea ecx, [ebp - 0x188]
push ecx
push 0
lea ecx, [ebp - 0xc0]
push ecx
push dword [ebp - 0x24]
call eax
test eax, eax
jne 0x496cf8
mov ebx, dword [0x4f081c]
test ebx, ebx
jne 0x496c41
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 0xc], eax
mov edx, eax
mov dword [ebp - 4], ecx
nop
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 8], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x496c28
nop
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 8]
imul eax, eax, 0x1000193
mov dword [ebp - 8], eax
cmp edi, ebx
jne 0x496bf0
cmp eax, 0xa3e6f6c3
je 0x496d2e
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 4], ecx
cmp eax, edx
je 0x496c39
cmp dword [ecx + 0x18], 0
jne 0x496bd0
xor ebx, ebx
mov dword [0x4f081c], ebx
mov eax, dword [0x4f07bc]
test eax, eax
jne 0x496cda
test ebx, ebx
je 0x496cd3
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0xc], eax
cmp eax, ebx
je 0x496cd3
xor ecx, ecx
mov dword [ebp - 4], ecx
cmp dword [eax + 0x18], ecx
je 0x496cd3
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 8], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x496cc1
movsx ecx, dl
lea esi, [esi + 1]
sub dl, 0x41
mov eax, ecx
or eax, 0x20
cmp dl, 0x19
mov dl, byte [esi - 1]
cmova eax, ecx
xor eax, edi
imul edi, eax, 0x1000193
test dl, dl
jne 0x496c90
mov ecx, dword [ebp - 4]
cmp edi, 0xb3c5b296
je 0x496d39
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 4], ecx
mov dword [ebp - 8], eax
cmp ecx, dword [edx + 0x18]
jne 0x496c80
xor eax, eax
mov dword [0x4f07bc], eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0x398]
push ecx
call eax
xor ecx, ecx
test eax, eax
sete cl
mov dword [ebp - 4], ecx
test eax, eax
je 0x496ec2
mov edx, dword [ebp - 0x10]
mov eax, edx
test edx, edx
jne 0x496d53
mov dword [ebp - 0xc], edx
jmp 0x496d6d
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x18]
jmp 0x496adb
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
jmp 0x496b79
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x18]
jmp 0x496c3b
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
jmp 0x496cd5
xor ecx, ecx
mov dword [ebp - 0xc], ecx
cmp word [edx], cx
je 0x496d6d
nop dword [eax]
lea eax, [eax + 2]
inc ecx
cmp word [eax], 0
jne 0x496d60
mov dword [ebp - 0xc], ecx
mov ebx, dword [0x4f083c]
test ebx, ebx
jne 0x496e02
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 0x1c], eax
mov edx, eax
mov dword [ebp - 4], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 8], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x496de9
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 8]
imul eax, eax, 0x1000193
mov dword [ebp - 8], eax
cmp edi, ebx
jne 0x496db1
cmp eax, 0x39794115
je 0x49700a
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 4], ecx
cmp eax, edx
je 0x496dfa
cmp dword [ecx + 0x18], 0
jne 0x496d93
xor ebx, ebx
mov dword [0x4f083c], ebx
mov ecx, dword [0x4f8bf8]
test ecx, ecx
jne 0x496e9f
test ebx, ebx
je 0x496e97
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
xor ecx, ecx
mov dword [ebp - 8], eax
cmp eax, ebx
je 0x496e99
mov dword [ebp - 4], ecx
cmp dword [eax + 0x18], ecx
je 0x496e97
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x1c], eax
nop dword [eax + eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x496e85
movsx ecx, dl
lea esi, [esi + 1]
sub dl, 0x41
mov eax, ecx
or eax, 0x20
cmp dl, 0x19
mov dl, byte [esi - 1]
cmova eax, ecx
xor eax, edi
imul edi, eax, 0x1000193
test dl, dl
jne 0x496e50
mov ecx, dword [ebp - 4]
cmp edi, 0x13b29f66
je 0x497015
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 8]
inc ecx
add eax, 4
mov dword [ebp - 4], ecx
mov dword [ebp - 0x1c], eax
cmp ecx, dword [edx + 0x18]
jne 0x496e40
xor ecx, ecx
mov dword [0x4f8bf8], ecx
mov eax, dword [ebp - 0xc]
add eax, eax
push eax
push dword [ebp - 0x10]
lea eax, [ebp - 0xc0]
push 1
push 0
push eax
push dword [ebp - 0x24]
call ecx
mov ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 4], ecx
mov ebx, dword [0x4f083c]
test ebx, ebx
jne 0x496f61
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 8], eax
mov edx, eax
mov dword [ebp - 0x10], ecx
nop dword [eax + eax]
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0x1c], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x496f48
nop
mov cl, byte [esi]
lea esi, [esi + 2]
movsx edx, cl
sub cl, 0x41
mov eax, edx
or eax, 0x20
cmp cl, 0x19
cmova eax, edx
inc edi
xor eax, dword [ebp - 0x1c]
imul eax, eax, 0x1000193
mov dword [ebp - 0x1c], eax
cmp edi, ebx
jne 0x496f10
cmp eax, 0x39794115
je 0x497032
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 8]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 0x10], ecx
cmp eax, edx
je 0x496f59
cmp dword [ecx + 0x18], 0
jne 0x496ef0
xor ebx, ebx
mov dword [0x4f083c], ebx
mov eax, dword [0x4f8bf0]
test eax, eax
jne 0x496ff9
test ebx, ebx
je 0x496ff2
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x496ff2
xor ecx, ecx
mov dword [ebp - 0xc], ecx
cmp dword [eax + 0x18], ecx
je 0x496ff2
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 0x10]
add eax, ebx
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
mov al, byte [esi + ebx]
add esi, ebx
inc esi
test al, al
je 0x496fe0
movsx edx, al
lea esi, [esi + 1]
sub al, 0x41
mov ecx, edx
or ecx, 0x20
cmp al, 0x19
mov al, byte [esi - 1]
cmova ecx, edx
xor ecx, edi
imul edi, ecx, 0x1000193
test al, al
jne 0x496fb1
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
cmp edi, 0x6b36a56a
je 0x49703d
mov eax, dword [ebp - 0x1c]
inc ecx
add eax, 4
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x1c], eax
cmp ecx, dword [edx + 0x18]
jne 0x496fa0
xor eax, eax
mov dword [0x4f8bf0], eax
push dword [ebp - 0x24]
call eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x18]
jmp 0x496dfc
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [eax + ebx]
add ecx, ebx
jmp 0x496e99
mov eax, dword [ebp - 0x10]
mov ebx, dword [eax + 0x18]
jmp 0x496f5b
mov eax, dword [edx + 0x24]
lea eax, [eax + ecx*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + ebx]
add eax, ebx
jmp 0x496ff4