Function at 0x4a9470
Capabilities:
Access peb ldr_data
Encode data using xor
Get number of processors
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x130
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x84], 0x49
mov eax, dword [ebp - 0x84]
xor eax, 0x4d
mov dword [ebp - 0x104], edx
mov word [ebp - 0x80], ax
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 8], ecx
xor eax, 0x69
mov word [ebp - 0x7e], ax
mov eax, dword [ebp - 0x84]
add eax, 2
xor eax, 0x63
mov word [ebp - 0x7c], ax
mov eax, dword [ebp - 0x84]
add eax, 3
xor eax, 0x72
mov word [ebp - 0x7a], ax
mov eax, dword [ebp - 0x84]
add eax, 4
xor eax, 0x6f
mov word [ebp - 0x78], ax
mov eax, dword [ebp - 0x84]
add eax, 5
xor eax, 0x73
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0x84]
add eax, 6
xor eax, 0x6f
mov word [ebp - 0x74], ax
mov eax, dword [ebp - 0x84]
add eax, 7
xor eax, 0x66
mov word [ebp - 0x72], ax
mov eax, dword [ebp - 0x84]
add eax, 8
xor eax, 0x74
mov word [ebp - 0x70], ax
mov eax, dword [ebp - 0x84]
add eax, 9
xor eax, 0x20
mov word [ebp - 0x6e], ax
mov eax, dword [ebp - 0x84]
add eax, 0xa
xor eax, 0x50
mov word [ebp - 0x6c], ax
mov eax, dword [ebp - 0x84]
add eax, 0xb
xor eax, 0x72
mov word [ebp - 0x6a], ax
mov eax, dword [ebp - 0x84]
add eax, 0xc
xor eax, 0x69
mov word [ebp - 0x68], ax
mov eax, dword [ebp - 0x84]
add eax, 0xd
xor eax, 0x6e
mov word [ebp - 0x66], ax
mov eax, dword [ebp - 0x84]
add eax, 0xe
xor eax, 0x74
mov word [ebp - 0x64], ax
mov eax, dword [ebp - 0x84]
add eax, 0xf
xor eax, 0x20
mov word [ebp - 0x62], ax
mov eax, dword [ebp - 0x84]
add eax, 0x10
xor eax, 0x74
mov word [ebp - 0x60], ax
mov eax, dword [ebp - 0x84]
add eax, 0x11
xor eax, 0x6f
push ebx
mov word [ebp - 0x5e], ax
mov eax, dword [ebp - 0x84]
push esi
push edi
add eax, 0x12
xor eax, 0x20
mov word [ebp - 0x5c], ax
mov eax, dword [ebp - 0x84]
add eax, 0x13
xor eax, 0x50
mov word [ebp - 0x5a], ax
mov eax, dword [ebp - 0x84]
add eax, 0x14
xor eax, 0x44
mov word [ebp - 0x58], ax
mov eax, dword [ebp - 0x84]
add eax, 0x15
xor eax, 0x46
mov word [ebp - 0x56], ax
mov eax, dword [ebp - 0x84]
add eax, 0x16
mov word [ebp - 0x54], ax
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x40378e]
add eax, 0x17
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x52], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x403790]
add eax, 0x18
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x50], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x403792]
add eax, 0x19
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x4e], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x403794]
add eax, 0x1a
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x4c], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x403796]
add eax, 0x1b
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x4a], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x403798]
add eax, 0x1c
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x48], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x40379a]
add eax, 0x1d
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x46], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x40379c]
add eax, 0x1e
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x44], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x40379e]
add eax, 0x1f
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x42], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037a0]
add eax, 0x20
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x40], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037a2]
add eax, 0x21
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x3e], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037a4]
add eax, 0x22
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x3c], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037a6]
add eax, 0x23
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x3a], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037a8]
add eax, 0x24
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x38], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037aa]
add eax, 0x25
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x36], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037ac]
add eax, 0x26
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x34], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037ae]
add eax, 0x27
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x32], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037b0]
add eax, 0x28
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x30], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037b2]
add eax, 0x29
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x2e], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037b4]
add eax, 0x2a
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x2c], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037b6]
add eax, 0x2b
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x2a], cx
mov eax, dword [ebp - 0x84]
movzx ecx, word [0x4037b8]
add eax, 0x2c
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 - 0x80]
nop word [eax + eax]
mov ax, word [ebp + edx*2 - 0x80]
mov ecx, dword [ebp - 0x84]
add ecx, edx
movzx eax, ax
xor ecx, eax
mov word [ebp + edx*2 - 0x80], cx
inc edx
cmp edx, 0x2d
jb 0x4a9840
mov ebx, dword [0x4f081c]
xor eax, eax
mov word [ebp - 0x26], ax
test ebx, ebx
jne 0x4a9901
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 - 0x14], eax
mov edx, eax
mov dword [ebp - 0x10], ecx
nop dword [eax]
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 0x4a98e8
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 0x4a98b0
cmp eax, 0xa3e6f6c3
je 0x4aaa8c
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 0x10], ecx
cmp eax, edx
je 0x4a98f9
cmp dword [ecx + 0x18], 0
jne 0x4a9890
xor ebx, ebx
mov dword [0x4f081c], ebx
mov eax, dword [0x4f07bc]
test eax, eax
jne 0x4a999e
test ebx, ebx
je 0x4a9997
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 0x4a9997
xor ecx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [eax + 0x18], ecx
je 0x4a9997
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x14], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4a9985
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 0x4a9950
cmp edi, 0xb3c5b296
je 0x4aaa97
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4a9940
xor eax, eax
mov dword [0x4f07bc], eax
lea ecx, [ebp - 0x80]
push ecx
push dword [ebp - 8]
call eax
test eax, eax
je 0x4aaa83
mov dword [ebp - 0x100], 2
mov eax, dword [ebp - 0x100]
xor eax, 0x4d
mov word [ebp - 0xfc], ax
mov eax, dword [ebp - 0x100]
inc eax
xor eax, 0x69
mov word [ebp - 0xfa], ax
mov eax, dword [ebp - 0x100]
add eax, 2
xor eax, 0x63
mov word [ebp - 0xf8], ax
mov eax, dword [ebp - 0x100]
add eax, 3
xor eax, 0x72
mov word [ebp - 0xf6], ax
mov eax, dword [ebp - 0x100]
add eax, 4
xor eax, 0x6f
mov word [ebp - 0xf4], ax
mov eax, dword [ebp - 0x100]
add eax, 5
xor eax, 0x73
mov word [ebp - 0xf2], ax
mov eax, dword [ebp - 0x100]
add eax, 6
xor eax, 0x6f
mov word [ebp - 0xf0], ax
mov eax, dword [ebp - 0x100]
add eax, 7
xor eax, 0x66
mov word [ebp - 0xee], ax
mov eax, dword [ebp - 0x100]
add eax, 8
xor eax, 0x74
mov word [ebp - 0xec], ax
mov eax, dword [ebp - 0x100]
add eax, 9
xor eax, 0x20
mov word [ebp - 0xea], ax
mov eax, dword [ebp - 0x100]
add eax, 0xa
xor eax, 0x58
mov word [ebp - 0xe8], ax
mov eax, dword [ebp - 0x100]
add eax, 0xb
xor eax, 0x50
mov word [ebp - 0xe6], ax
mov eax, dword [ebp - 0x100]
add eax, 0xc
xor eax, 0x53
mov word [ebp - 0xe4], ax
mov eax, dword [ebp - 0x100]
add eax, 0xd
xor eax, 0x20
mov word [ebp - 0xe2], ax
mov eax, dword [ebp - 0x100]
add eax, 0xe
xor eax, 0x44
mov word [ebp - 0xe0], ax
mov eax, dword [ebp - 0x100]
add eax, 0xf
xor eax, 0x6f
mov word [ebp - 0xde], ax
mov eax, dword [ebp - 0x100]
add eax, 0x10
xor eax, 0x63
mov word [ebp - 0xdc], ax
mov eax, dword [ebp - 0x100]
add eax, 0x11
xor eax, 0x75
mov word [ebp - 0xda], ax
mov eax, dword [ebp - 0x100]
add eax, 0x12
xor eax, 0x6d
mov word [ebp - 0xd8], ax
mov eax, dword [ebp - 0x100]
add eax, 0x13
xor eax, 0x65
mov word [ebp - 0xd6], ax
mov eax, dword [ebp - 0x100]
add eax, 0x14
xor eax, 0x6e
mov word [ebp - 0xd4], ax
mov eax, dword [ebp - 0x100]
add eax, 0x15
xor eax, 0x74
mov word [ebp - 0xd2], ax
mov eax, dword [ebp - 0x100]
add eax, 0x16
xor eax, 0x20
mov word [ebp - 0xd0], ax
mov eax, dword [ebp - 0x100]
add eax, 0x17
xor eax, 0x57
mov word [ebp - 0xce], ax
mov eax, dword [ebp - 0x100]
add eax, 0x18
xor eax, 0x72
mov word [ebp - 0xcc], ax
mov eax, dword [ebp - 0x100]
add eax, 0x19
xor eax, 0x69
mov word [ebp - 0xca], ax
mov eax, dword [ebp - 0x100]
add eax, 0x1a
xor eax, 0x74
mov word [ebp - 0xc8], ax
mov eax, dword [ebp - 0x100]
add eax, 0x1b
xor eax, 0x65
mov word [ebp - 0xc6], ax
mov eax, dword [ebp - 0x100]
add eax, 0x1c
xor eax, 0x72
mov word [ebp - 0xc4], ax
mov eax, dword [ebp - 0x100]
add eax, 0x1d
mov word [ebp - 0xc2], ax
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037cc]
add eax, 0x1e
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xc0], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037ce]
add eax, 0x1f
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xbe], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037d0]
add eax, 0x20
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xbc], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037d2]
add eax, 0x21
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xba], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037d4]
add eax, 0x22
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xb8], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037d6]
add eax, 0x23
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xb6], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037d8]
add eax, 0x24
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xb4], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037da]
add eax, 0x25
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xb2], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037dc]
add eax, 0x26
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xb0], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037de]
add eax, 0x27
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xae], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037e0]
add eax, 0x28
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xac], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037e2]
add eax, 0x29
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xaa], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037e4]
add eax, 0x2a
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xa8], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037e6]
add eax, 0x2b
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xa6], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037e8]
add eax, 0x2c
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xa4], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037ea]
add eax, 0x2d
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xa2], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037ec]
add eax, 0x2e
movzx eax, ax
xor ecx, eax
mov word [ebp - 0xa0], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037ee]
add eax, 0x2f
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x9e], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037f0]
add eax, 0x30
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x9c], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037f2]
add eax, 0x31
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x9a], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037f4]
add eax, 0x32
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x98], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037f6]
add eax, 0x33
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x96], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037f8]
add eax, 0x34
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x94], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037fa]
add eax, 0x35
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x92], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037fc]
add eax, 0x36
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x90], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x4037fe]
add eax, 0x37
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x8e], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x403800]
add eax, 0x38
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x8c], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x403802]
add eax, 0x39
movzx eax, ax
xor ecx, eax
mov word [ebp - 0x8a], cx
mov eax, dword [ebp - 0x100]
movzx ecx, word [0x403804]
add eax, 0x3a
movzx eax, ax
xor ecx, eax
xor eax, eax
mov word [ebp - 0x88], cx
xor edx, edx
mov word [ebp - 0x86], ax
mov ax, word [ebp - 0xfc]
nop dword [eax]
mov ax, word [ebp + edx*2 - 0xfc]
mov ecx, dword [ebp - 0x100]
add ecx, edx
movzx eax, ax
xor ecx, eax
mov word [ebp + edx*2 - 0xfc], cx
inc edx
cmp edx, 0x3b
jb 0x4a9f30
mov ebx, dword [0x4f081c]
xor eax, eax
mov word [ebp - 0x86], ax
test ebx, ebx
jne 0x4a9ff1
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 - 0x10], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0x14], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4a9fd8
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 - 0x14]
imul eax, eax, 0x1000193
mov dword [ebp - 0x14], eax
cmp edi, ebx
jne 0x4a9fa0
cmp eax, 0xa3e6f6c3
je 0x4aaab5
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 0x10], ecx
cmp eax, edx
je 0x4a9fe9
cmp dword [ecx + 0x18], 0
jne 0x4a9f82
xor ebx, ebx
mov dword [0x4f081c], ebx
mov eax, dword [0x4f07bc]
test eax, eax
jne 0x4aa08e
test ebx, ebx
je 0x4aa087
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 0x4aa087
xor ecx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa087
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x14], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aa075
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 0x4aa040
cmp edi, 0xb3c5b296
je 0x4aaac0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa030
xor eax, eax
mov dword [0x4f07bc], eax
lea ecx, [ebp - 0xfc]
push ecx
push dword [ebp - 8]
call eax
test eax, eax
je 0x4aaa83
mov ebx, dword [0x4f8d38]
test ebx, ebx
jne 0x4aa141
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 - 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 - 0x14], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4aa128
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 - 0x14]
imul eax, eax, 0x1000193
mov dword [ebp - 0x14], eax
cmp edi, ebx
jne 0x4aa0f0
cmp eax, 0x4597ecd6
je 0x4aaade
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 0x10], ecx
cmp eax, edx
je 0x4aa139
cmp dword [ecx + 0x18], 0
jne 0x4aa0d0
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d30]
test eax, eax
jne 0x4aa1de
test ebx, ebx
je 0x4aa1d7
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 0x4aa1d7
xor ecx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa1d7
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x14], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aa1c5
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 0x4aa190
cmp edi, 0xebb18dec
je 0x4aaae9
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa180
xor eax, eax
mov dword [0x4f8d30], eax
mov ebx, dword [ebp - 8]
lea ecx, [ebp - 0x24]
push 0
push ecx
push ebx
call eax
test eax, eax
je 0x4aaa83
mov dword [ebp - 0x12c], ebx
mov eax, 0x36
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x11c], 0x64
mov word [ebp - 0x118], ax
mov eax, 0x25
mov word [ebp - 0x116], ax
mov eax, 0x33
mov word [ebp - 0x114], ax
mov eax, 0x64
mov word [ebp - 0x112], ax
movzx eax, word [0x4037d4]
xor eax, 0x64
mov word [ebp - 0x110], ax
movzx eax, word [0x4037d6]
xor eax, 0x64
mov word [ebp - 0x10e], ax
movzx eax, word [0x4037d8]
xor eax, 0x64
mov word [ebp - 0x10c], ax
xor eax, eax
mov word [ebp - 0x10a], ax
xor edx, edx
mov ax, word [ebp - 0x118]
mov ax, word [ebp + edx*2 - 0x118]
movzx ecx, ax
movzx eax, word [ebp - 0x11c]
xor ecx, eax
mov word [ebp + edx*2 - 0x118], cx
inc edx
cmp edx, 7
jb 0x4aa281
mov ebx, dword [0x4f8d38]
xor eax, eax
mov word [ebp - 0x10a], ax
lea eax, [ebp - 0x118]
mov dword [ebp - 0x124], eax
test ebx, ebx
jne 0x4aa351
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 - 8], ecx
nop
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0x14], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4aa338
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 - 0x14]
imul eax, eax, 0x1000193
mov dword [ebp - 0x14], eax
cmp edi, ebx
jne 0x4aa300
cmp eax, 0x4597ecd6
je 0x4aab07
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 8], ecx
cmp eax, edx
je 0x4aa349
cmp dword [ecx + 0x18], 0
jne 0x4aa2e0
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d34]
test eax, eax
jne 0x4aa3f2
test ebx, ebx
je 0x4aa3eb
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 0x4aa3eb
xor ecx, ecx
mov dword [ebp - 8], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa3eb
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x14], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aa3d9
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 0x4aa3a4
mov ecx, dword [ebp - 8]
cmp edi, 0x161b8aae
je 0x4aab12
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 8], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa394
xor eax, eax
mov dword [0x4f8d34], eax
lea ecx, [ebp - 0x12c]
push ecx
push 1
push dword [ebp - 0x24]
call eax
test eax, eax
je 0x4aa943
mov dword [ebp - 0x1c], 0
nop
mov ebx, dword [0x4f8d38]
test ebx, ebx
jne 0x4aa4a5
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 - 8], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0x14], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4aa48c
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 - 0x14]
imul eax, eax, 0x1000193
mov dword [ebp - 0x14], eax
cmp edi, ebx
jne 0x4aa454
cmp eax, 0x4597ecd6
je 0x4aab2f
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 8], ecx
cmp eax, edx
je 0x4aa49d
cmp dword [ecx + 0x18], 0
jne 0x4aa436
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d24]
test eax, eax
jne 0x4aa54e
test ebx, ebx
je 0x4aa547
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x14], eax
lea eax, [ecx + ebx]
mov dword [ebp - 0xc], eax
cmp eax, ebx
je 0x4aa547
xor ecx, ecx
mov dword [ebp - 8], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa547
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x14], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aa535
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 0x4aa500
mov ecx, dword [ebp - 8]
cmp edi, 0x717e41d0
je 0x4aab3a
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 8], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa4f0
xor eax, eax
mov dword [0x4f8d24], eax
push dword [ebp - 0x24]
call eax
mov ebx, dword [0x4f8d38]
test ebx, ebx
jne 0x4aa5f1
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 - 8], ecx
nop dword [eax]
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0x14], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4aa5d8
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 - 0x14]
imul eax, eax, 0x1000193
mov dword [ebp - 0x14], eax
cmp edi, ebx
jne 0x4aa5a0
cmp eax, 0x4597ecd6
je 0x4aab57
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 8], ecx
cmp eax, edx
je 0x4aa5e9
cmp dword [ecx + 0x18], 0
jne 0x4aa580
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d44]
test eax, eax
jne 0x4aa692
test ebx, ebx
je 0x4aa68b
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x14], eax
lea eax, [ecx + ebx]
mov dword [ebp - 0xc], eax
cmp eax, ebx
je 0x4aa68b
xor ecx, ecx
mov dword [ebp - 8], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa68b
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x14], eax
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aa679
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 0x4aa644
mov ecx, dword [ebp - 8]
cmp edi, 0x70ba9318
je 0x4aab62
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0xc]
inc ecx
add eax, 4
mov dword [ebp - 8], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa634
xor eax, eax
mov dword [0x4f8d44], eax
lea ecx, [ebp - 0x120]
push ecx
push dword [ebp + 8]
push dword [ebp - 0x104]
push dword [ebp - 0x24]
call eax
test eax, eax
je 0x4aa943
mov ebx, dword [0x4f8d38]
test ebx, ebx
jne 0x4aa744
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 - 8], ecx
movzx ebx, word [ecx + 0x2c]
xor edi, edi
mov esi, dword [ecx + 0x30]
shr ebx, 1
mov dword [ebp - 0x14], 0x811c9dc5
lea eax, [esi + ebx*2]
cmp esi, eax
cmova ebx, edi
test ebx, ebx
je 0x4aa72b
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 - 0x14]
imul eax, eax, 0x1000193
mov dword [ebp - 0x14], eax
cmp edi, ebx
jne 0x4aa6f3
cmp eax, 0x4597ecd6
je 0x4aab7f
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 8], ecx
cmp eax, edx
je 0x4aa73c
cmp dword [ecx + 0x18], 0
jne 0x4aa6d5
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d3c]
test eax, eax
jne 0x4aa7ed
test ebx, ebx
je 0x4aa7e6
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x14], eax
lea eax, [ecx + ebx]
mov dword [ebp - 8], eax
cmp eax, ebx
je 0x4aa7e6
xor ecx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa7e6
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 8]
add eax, ebx
mov dword [ebp - 0x14], eax
nop
mov esi, dword [eax]
mov edi, 0x811c9dc5
mov al, byte [esi + ebx]
add esi, ebx
inc esi
test al, al
je 0x4aa7d4
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 0x4aa7a1
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 8]
cmp edi, 0x1b07772b
je 0x4aab8a
mov eax, dword [ebp - 0x14]
inc ecx
add eax, 4
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa790
xor eax, eax
mov dword [0x4f8d3c], eax
push dword [ebp - 0x24]
call eax
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x270f
jl 0x4aa410
mov ebx, dword [0x4f8d38]
test ebx, ebx
jne 0x4aa8a1
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 - 0x14], eax
mov edx, eax
mov dword [ebp - 8], ecx
nop word [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 0x4aa888
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 0x4aa850
cmp eax, 0x4597ecd6
je 0x4aaba4
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x14]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 8], ecx
cmp eax, edx
je 0x4aa899
cmp dword [ecx + 0x18], 0
jne 0x4aa830
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d28]
test eax, eax
jne 0x4aa93e
test ebx, ebx
je 0x4aa937
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0x14], eax
cmp eax, ebx
je 0x4aa937
xor ecx, ecx
mov dword [ebp - 8], ecx
cmp dword [eax + 0x18], ecx
je 0x4aa937
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aa925
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 0x4aa8f0
mov ecx, dword [ebp - 8]
cmp edi, 0x18c94680
je 0x4aabaf
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
inc ecx
add eax, 4
mov dword [ebp - 8], ecx
mov dword [ebp - 0x1c], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aa8e0
xor eax, eax
mov dword [0x4f8d28], eax
push dword [ebp - 0x24]
call eax
mov ebx, dword [0x4f8d38]
test ebx, ebx
jne 0x4aa9e1
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 - 0x14], eax
mov edx, eax
mov dword [ebp - 8], ecx
nop dword [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 0x4aa9c8
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 0x4aa990
cmp eax, 0x4597ecd6
je 0x4aabcc
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x14]
mov eax, dword [ecx]
mov ecx, eax
mov dword [ebp - 8], ecx
cmp eax, edx
je 0x4aa9d9
cmp dword [ecx + 0x18], 0
jne 0x4aa970
xor ebx, ebx
mov dword [0x4f8d38], ebx
mov eax, dword [0x4f8d2c]
test eax, eax
jne 0x4aaa7e
test ebx, ebx
je 0x4aaa77
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
lea eax, [ecx + ebx]
mov dword [ebp - 0x14], eax
cmp eax, ebx
je 0x4aaa77
xor ecx, ecx
mov dword [ebp - 8], ecx
cmp dword [eax + 0x18], ecx
je 0x4aaa77
mov eax, dword [eax + 0x20]
add eax, ebx
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov esi, dword [eax]
mov edi, 0x811c9dc5
add esi, ebx
mov dl, byte [esi]
inc esi
test dl, dl
je 0x4aaa65
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 0x4aaa30
mov ecx, dword [ebp - 8]
cmp edi, 0x3a3e1d5
je 0x4aabd7
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
inc ecx
add eax, 4
mov dword [ebp - 8], ecx
mov dword [ebp - 0x1c], eax
cmp ecx, dword [edx + 0x18]
jne 0x4aaa20
xor eax, eax
mov dword [0x4f8d2c], eax
push dword [ebp - 0x24]
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x10]
mov ebx, dword [eax + 0x18]
jmp 0x4a98fb
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
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 0x4a9999
mov eax, dword [ebp - 0x10]
mov ebx, dword [eax + 0x18]
jmp 0x4a9feb
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
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 0x4aa089
mov eax, dword [ebp - 0x10]
mov ebx, dword [eax + 0x18]
jmp 0x4aa13b
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
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 0x4aa1d9
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x18]
jmp 0x4aa34b
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 0x4aa3ed
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x18]
jmp 0x4aa49f
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 0x4aa549
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x18]
jmp 0x4aa5eb
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 0x4aa68d
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x18]
jmp 0x4aa73e
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 0x4aa7e8
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x18]
jmp 0x4aa89b
mov edx, dword [ebp - 0x14]
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 0x4aa939
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 0x18]
jmp 0x4aa9db
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x24]
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
mov dword [0x4f8d2c], eax
call eax
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret