Function at 0x4eb5d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x744862
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x100
mov al, byte [esp + 3]
push ebx
push ebp
push esi
mov ebp, ecx
xor ebx, ebx
push edi
push ebx
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], al
call fcn.00404760
mov esi, dword [esp + 0x120]
mov dword [esp + 0x118], ebx
cmp esi, ebx
jne 0x4eb634
push 1
lea ecx, [esp + 0x20]
mov dword [esp + 0x11c], 0xffffffff
call fcn.00404760
xor eax, eax
jmp 0x4f04bd
mov edx, dword [esi + 0x30]
cmp edx, ebx
jne 0x4eb658
push 1
lea ecx, [esp + 0x20]
mov dword [esp + 0x11c], 0xffffffff
call fcn.00404760
xor eax, eax
jmp 0x4f04bd
cmp dword [esi + 0x34], ebx
jne 0x4eb67a
push 1
lea ecx, [esp + 0x20]
mov dword [esp + 0x11c], 0xffffffff
call fcn.00404760
xor eax, eax
jmp 0x4f04bd
mov ecx, dword [0x93c97c]
mov eax, dword [ebp + 0x340]
add ecx, 0x7dc
cmp eax, ebx
mov dword [esp + 0x5c], ecx
je 0x4eb6c2
mov ecx, dword [eax + 0x30]
mov edi, dword [ecx]
cmp edi, dword [edx]
jne 0x4eb6c2
mov edx, dword [eax + 0x34]
mov edi, dword [edx]
mov edx, dword [esi + 0x34]
cmp edi, dword [edx]
jne 0x4eb6c2
mov eax, dword [eax + 0x3c]
mov edx, dword [esi + 0x3c]
cmp eax, edx
jne 0x4eb6c2
mov eax, dword [esi + 0x30]
mov ecx, dword [ecx + 0x50]
cmp ecx, dword [eax + 0x50]
je 0x4f04a7
mov dl, byte [esp + 0x13]
push 0
lea ecx, [esp + 0xc4]
mov dword [ebp + 0x340], esi
mov byte [esp + 0xc4], dl
call fcn.00404760
mov al, byte [0x7c4d78]
mov byte [esp + 0x118], 1
mov byte [esp + 0x60], al
mov ecx, 0xf
xor eax, eax
lea edi, [esp + 0x61]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp + 0xdc]
stosw word es:[edi], ax
test ecx, ecx
stosb byte es:[edi], al
je 0x4ebc36
mov edx, dword [ecx]
push 0x800000
push 1
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11b5
call fcn.006a8c20
mov ecx, dword [esi + 0x30]
mov eax, dword [esp + 0x28]
add esp, 8
add ecx, 8
test eax, eax
jne 0x4eb744
mov eax, 0x765608
mov edx, dword [esp + 0x24]
push edx
push eax
mov eax, dword [ecx + 8]
push eax
push 0
call fcn.0040af30
test eax, eax
jne 0x4eb8a9
mov eax, dword [esi + 0x38]
mov esi, dword [esi + 0x30]
test eax, eax
jne 0x4eb78b
add esi, 8
mov esi, dword [esi + 4]
test esi, esi
jne 0x4eb776
mov esi, 0x765608
push esi
lea ecx, [esp + 0x64]
push 0x7a5a14
push ecx
call fcn.00727335
add esp, 0xc
jmp 0x4eb7ae
add esi, 8
mov esi, dword [esi + 4]
test esi, esi
jne 0x4eb79a
mov esi, 0x765608
push esi
push eax
lea edx, [esp + 0x68]
push 0x7a5a0c
push edx
call fcn.00727335
add esp, 0x10
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xd4]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4eb7d2
push edx
mov ecx, eax
call fcn.004380d0
lea edi, [esp + 0x60]
or ecx, 0xffffffff
xor eax, eax
lea ebx, [ebp + 0x154]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov esi, ecx
mov ecx, ebx
push esi
mov dword [esp + 0x20], esi
call fcn.00401450
test al, al
je 0x4eb81b
mov edi, dword [ebx + 4]
mov ecx, esi
mov eax, ecx
lea esi, [esp + 0x60]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
push ecx
mov ecx, ebx
call fcn.00404970
add ebp, 0x164
mov dword [esp + 0x14], 0x1d
mov edi, 0x7c4d78
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
mov ecx, ebp
push ebx
call fcn.00401450
test al, al
je 0x4eb868
mov edi, dword [ebp + 4]
mov ecx, ebx
mov edx, ecx
mov esi, 0x7c4d78
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.00404970
mov eax, dword [esp + 0x14]
dec eax
mov dword [esp + 0x14], eax
jne 0x4eb829
push 1
lea ecx, [esp + 0xc4]
mov byte [esp + 0x11c], 0
call fcn.00404760
push 1
lea ecx, [esp + 0x20]
mov dword [esp + 0x11c], 0xffffffff
call fcn.00404760
mov eax, 1
jmp 0x4f04bd
mov al, byte [esp + 0x13]
push 0
lea ecx, [esp + 0x50]
mov byte [esp + 0x50], al
call fcn.00404760
mov edi, 0x7c4d78
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x50]
push ebx
call fcn.00401450
test al, al
je 0x4eb907
mov edi, dword [esp + 0x50]
mov ecx, ebx
mov edx, ecx
mov esi, 0x7c4d78
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x50]
call fcn.00404970
mov esi, dword [esp + 0x120]
mov ecx, dword [esi + 0x34]
mov byte [esp + 0x118], 2
mov al, byte [ecx + 0x34]
cmp al, 4
je 0x4eb99d
cmp al, 6
je 0x4eb99d
mov eax, dword [ecx]
xor edx, edx
mov edi, 0xa
div edi
test edx, edx
je 0x4eb99d
mov eax, dword [ecx]
xor edx, edx
mov ecx, edi
div ecx
push edx
lea edx, [esp + 0xa4]
push 0x7a5734
push edx
call fcn.00727335
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebx, ecx
lea ecx, [esp + 0x50]
push ebx
call fcn.00401450
test al, al
je 0x4eb99d
mov edi, dword [esp + 0x50]
mov ecx, ebx
mov eax, ecx
lea esi, [esp + 0xa0]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x50]
call fcn.00404970
mov esi, dword [esp + 0x120]
mov edx, dword [esi + 0x30]
mov edi, dword [ebp + 0xdc]
lea ecx, [esp + 0x4c]
add edx, 8
push ecx
lea eax, [esp + 0x40]
push edx
push eax
add edi, 0xc8
call fcn.0040add0
add esp, 0xc
mov ecx, dword [edi + 8]
mov edi, dword [edi + 4]
test edi, edi
mov byte [esp + 0x118], 3
jne 0x4eb9d9
mov edi, 0x765608
push ecx
mov ecx, dword [eax + 8]
push edi
push ecx
push 0
mov ecx, eax
call fcn.0040af30
test eax, eax
push 1
lea ecx, [esp + 0x40]
setne bl
mov byte [esp + 0x11c], 2
call fcn.00404760
test bl, bl
je 0x4ebb2f
mov edx, dword [esi + 0x34]
xor eax, eax
mov al, byte [edx + 0x34]
cmp eax, 6
ja case.default.0x4eba19
jmp dword [eax*4 + 0x4f04d8]
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xd4]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xc0]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xbc]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xd0]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xc4]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xcc]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xc8]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
jmp 0x4ebb27
mov eax, dword [ebp + 0xdc]
mov edx, dword [ebp + 0xd4]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebb2f
push edx
mov ecx, eax
call fcn.004380d0
mov edi, dword [esi + 0x34]
xor eax, eax
mov al, byte [edi + 0x34]
cmp eax, 4
je 0x4ebbaa
cmp eax, 3
je 0x4ebbaa
cmp eax, 6
je 0x4ebbaa
mov ecx, dword [esi + 0x30]
lea eax, [esp + 0x4c]
add ecx, 8
push eax
lea edx, [esp + 0x30]
push ecx
push edx
call fcn.0040add0
mov eax, dword [0x93c97c]
lea ecx, [esp + 0x38]
add eax, 0x478
mov byte [esp + 0x124], 5
push eax
push 0x936f60
push ecx
call fcn.006f6840
mov edx, dword [0x76560c]
add esp, 0x18
lea eax, [esp + 0x2c]
lea ecx, [ebp + 0x154]
push edx
push 0
push eax
call fcn.00404560
mov byte [esp + 0x118], 2
push 1
lea ecx, [esp + 0x30]
jmp 0x4ebc1e
mov cl, byte [edi + 4]
add edi, 4
mov byte [esp + 0x2c], cl
push 0
lea ecx, [esp + 0x30]
call fcn.00404760
mov edx, dword [0x76560c]
lea ecx, [esp + 0x2c]
push edx
push 0
push edi
call fcn.00404560
mov eax, dword [0x93c97c]
lea ecx, [esp + 0x2c]
add eax, 0x478
mov byte [esp + 0x118], 4
push eax
push 0x936f60
push ecx
call fcn.006f6840
mov edx, dword [0x76560c]
add esp, 0xc
lea eax, [esp + 0x2c]
lea ecx, [ebp + 0x154]
push edx
push 0
push eax
call fcn.00404560
mov byte [esp + 0x118], 2
push 1
lea ecx, [esp + 0x30]
call fcn.00404760
push 1
lea ecx, [esp + 0x50]
mov byte [esp + 0x11c], 1
call fcn.00404760
lea ecx, [esp + 0x1c]
mov ebx, 1
push ecx
push 0x11b5
call fcn.006a8c20
mov ecx, dword [esi + 0x30]
mov eax, dword [esp + 0x28]
add esp, 8
add ecx, 8
test eax, eax
jne 0x4ebc60
mov eax, 0x765608
mov edx, dword [esp + 0x24]
push edx
push eax
mov eax, dword [ecx + 8]
push eax
push 0
call fcn.0040af30
test eax, eax
je 0x4ebe09
mov ecx, dword [esi + 0x34]
xor edx, edx
mov dl, byte [ecx + 0x34]
mov edi, edx
test edi, edi
jle 0x4ebe09
cmp edi, 6
jg 0x4ebe09
mov ecx, dword [ebp + 0xe0]
push 0x800000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea eax, [edi - 1]
cmp eax, 5
ja case.default.0x4ebcb5
jmp dword [eax*4 + 0x4f04f4]
mov eax, dword [ebp + 0xe0]
mov edx, dword [ebp + 0xc0]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebce0
push edx
mov ecx, eax
call fcn.004380d0
lea ecx, [esp + 0x1c]
push ecx
push 0x1a98
jmp 0x4ebde3
mov eax, dword [ebp + 0xe0]
mov edx, dword [ebp + 0xbc]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebd13
push edx
mov ecx, eax
call fcn.004380d0
lea edx, [esp + 0x1c]
push edx
push 0x1a99
jmp 0x4ebde3
mov eax, dword [ebp + 0xe0]
mov edx, dword [ebp + 0xd0]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebd46
push edx
mov ecx, eax
call fcn.004380d0
lea eax, [esp + 0x1c]
push eax
push 0x1a9a
jmp 0x4ebde3
mov eax, dword [ebp + 0xe0]
mov edx, dword [ebp + 0xc4]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebd79
push edx
mov ecx, eax
call fcn.004380d0
lea ecx, [esp + 0x1c]
push ecx
push 0x1a9b
jmp 0x4ebde3
mov eax, dword [ebp + 0xe0]
mov edx, dword [ebp + 0xcc]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebda9
push edx
mov ecx, eax
call fcn.004380d0
lea edx, [esp + 0x1c]
push edx
push 0x1a9c
jmp 0x4ebde3
mov eax, dword [ebp + 0xe0]
mov edx, dword [ebp + 0xc8]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebdd9
push edx
mov ecx, eax
call fcn.004380d0
lea eax, [esp + 0x1c]
push eax
push 0x1a9e
call fcn.006a8c20
add esp, 8
mov ecx, dword [0x76560c]
lea edx, [esp + 0x1c]
push ecx
push 0
push edx
lea ecx, [ebp + 0x164]
call fcn.00404560
mov ebx, 2
mov eax, dword [esi + 0x30]
mov al, byte [eax + 0x5a]
cmp al, 1
je 0x4ebe8f
cmp al, 3
je 0x4ebe8f
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x800000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
mov eax, dword [esi + 0x30]
xor ecx, ecx
lea edx, [esp + 0xc0]
mov cl, byte [eax + 0x40]
push edx
mov eax, ecx
push eax
call fcn.006a8490
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 8
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebe6d
push edx
mov ecx, eax
call fcn.004380d0
mov eax, dword [0x76560c]
mov edx, ebx
push eax
lea ecx, [esp + 0xc4]
shl edx, 4
push 0
push ecx
lea ecx, [edx + ebp + 0x154]
call fcn.00404560
inc ebx
mov eax, dword [esi + 0x30]
xor ecx, ecx
mov cl, byte [eax + 0x43]
mov edi, ecx
test edi, edi
je 0x4ebf4f
cmp edi, 0x14
je 0x4ebf4f
cmp edi, 0x1e
je 0x4ebf4f
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x800000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
lea eax, [esp + 0xc0]
push eax
push edi
call fcn.006a9050
mov ecx, dword [0x93c97c]
add esp, 8
cmp dword [ecx + 0x48c], edi
jne 0x4ebf07
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebf2c
jmp 0x4ebf24
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd8]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ebf2c
push edx
mov ecx, eax
call fcn.004380d0
mov edx, dword [0x76560c]
mov ecx, ebx
shl ecx, 4
push edx
lea eax, [esp + 0xc4]
push 0
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.00404560
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ebf65
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ebf6e
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x30]
mov al, byte [edx + 0x44]
test al, al
je 0x4ec1e4
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x800000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, dword [esi + 0x30]
xor edx, edx
lea eax, [esp + 0xc0]
mov dl, byte [ecx + 0x44]
push eax
mov edi, edx
push edi
call fcn.006a79f0
lea eax, [edi - 1]
add esp, 8
cmp eax, 0xb
ja case.default.0x4ebfb9
jmp dword [eax*4 + 0x4f050c]
mov ecx, dword [0x93c97c]
mov eax, dword [ecx + 0x494]
add eax, 0xffffff9b
cmp eax, 0x69
ja case.0x4ebfdc.102
xor edx, edx
mov dl, byte [eax + 0x4f0544]
jmp dword [edx*4 + 0x4f053c]
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov eax, dword [0x93c97c]
mov eax, dword [eax + 0x494]
add eax, 0xffffff9a
cmp eax, 0x6a
ja case.0x4ebfdc.102
xor ecx, ecx
mov cl, byte [eax + 0x4f05b8]
jmp dword [ecx*4 + 0x4f05b0]
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x494]
add eax, 0xffffff99
cmp eax, 0x6b
ja case.0x4ebfdc.102
xor ecx, ecx
mov cl, byte [eax + 0x4f062c]
jmp dword [ecx*4 + 0x4f0624]
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x494]
add eax, 0xffffff98
cmp eax, 0x6c
ja case.0x4ebfdc.102
xor ecx, ecx
mov cl, byte [eax + 0x4f06a0]
jmp dword [ecx*4 + 0x4f0698]
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x494]
sub eax, 0x69
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov eax, dword [0x93c97c]
mov eax, dword [eax + 0x494]
sub eax, 0x6a
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov ecx, dword [0x93c97c]
mov eax, dword [ecx + 0x494]
sub eax, 0x6b
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x494]
sub eax, 0x6c
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov eax, dword [0x93c97c]
mov eax, dword [eax + 0x494]
sub eax, 0x6d
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov ecx, dword [0x93c97c]
mov eax, dword [ecx + 0x494]
sub eax, 0x6e
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x494]
sub eax, 0x6f
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov eax, dword [0x93c97c]
mov eax, dword [eax + 0x494]
sub eax, 0x70
je case.0x4ebfdc.101
sub eax, 0x64
je case.0x4ebfdc.101
mov edx, dword [ebp + 0xd8]
jmp 0x4ec183
mov ecx, dword [0x93c97c]
cmp dword [ecx + 0x494], edi
jne 0x4ec19c
mov edx, dword [ebp + 0xd4]
mov eax, dword [ebp + ebx*4 + 0xdc]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec1c1
jmp 0x4ec1b9
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd8]
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec1c1
push edx
mov ecx, eax
call fcn.004380d0
mov edx, dword [0x76560c]
mov ecx, ebx
shl ecx, 4
push edx
lea eax, [esp + 0xc4]
push 0
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.00404560
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec1fa
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec203
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x30]
mov ecx, dword [esi + 0x34]
movsx eax, word [edx + 0x46]
movsx edx, word [ecx + 0x36]
add eax, edx
je 0x4ec2f1
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11ad
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec24e
mov eax, 0x765608
mov edx, dword [esi + 0x30]
movsx ecx, word [edx + 0x46]
mov edx, dword [esi + 0x34]
movsx edx, word [edx + 0x36]
add ecx, edx
push ecx
push eax
lea eax, [esp + 0x68]
push eax
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec292
push edx
mov ecx, eax
call fcn.004380d0
mov ecx, ebx
lea edi, [esp + 0x60]
shl ecx, 4
xor eax, eax
push 1
lea edx, [ecx + ebp + 0x154]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ec2f0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec307
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec310
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x30]
movsx eax, word [edx + 0x38]
movsx edx, word [ecx + 0x48]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
mov dword [esp + 0x18], edx
fmul dword [0x765ea0]
fimul dword [esp + 0x18]
fcomp dword [0x765614]
fnstsw ax
test ah, 0x40
jne 0x4ec4ef
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
movsx edx, word [ecx + 0x38]
movsx ecx, word [eax + 0x48]
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
mov dword [esp + 0x18], ecx
fmul dword [0x765ea0]
fimul dword [esp + 0x18]
fstp dword [esp + 0x14]
fld dword [0x765614]
fcomp dword [esp + 0x14]
fnstsw ax
test ah, 0x41
je 0x4ec3b4
fld dword [esp + 0x14]
fcomp dword [0x767ec0]
fnstsw ax
test ah, 0x41
je 0x4ec3b4
lea edx, [esp + 0x1c]
push edx
push 0x1199
jmp 0x4ec448
fld dword [0x767ebc]
fcomp dword [esp + 0x14]
fnstsw ax
test ah, 0x41
je 0x4ec3e2
fld dword [esp + 0x14]
fcomp dword [0x767eb8]
fnstsw ax
test ah, 0x41
je 0x4ec3e2
lea eax, [esp + 0x1c]
push eax
push 0x1196
jmp 0x4ec448
fld dword [0x767eb4]
fcomp dword [esp + 0x14]
fnstsw ax
test ah, 0x41
je 0x4ec410
fld dword [esp + 0x14]
fcomp dword [0x767eb0]
fnstsw ax
test ah, 0x41
je 0x4ec410
lea ecx, [esp + 0x1c]
push ecx
push 0x1197
jmp 0x4ec448
fld dword [0x767eac]
fcomp dword [esp + 0x14]
fnstsw ax
test ah, 0x41
je 0x4ec43e
fld dword [esp + 0x14]
fcomp dword [0x767ea8]
fnstsw ax
test ah, 0x41
je 0x4ec43e
lea edx, [esp + 0x1c]
push edx
push 0x1198
jmp 0x4ec448
lea eax, [esp + 0x1c]
push eax
push 0x119a
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec45d
mov eax, 0x765608
lea ecx, [esp + 0x60]
push eax
push ecx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 8
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec490
push edx
mov ecx, eax
call fcn.004380d0
mov edx, ebx
lea edi, [esp + 0x60]
or ecx, 0xffffffff
xor eax, eax
shl edx, 4
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [edx + ebp + 0x154]
push 1
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
mov dword [esp + 0x20], edx
call fcn.00401450
test al, al
je 0x4ec4ee
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec505
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec50e
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x30]
cmp word [edx + 0x4a], 0
je 0x4ec5fe
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x119b
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec551
mov eax, 0x765608
mov edx, dword [esi + 0x30]
sub esp, 8
movsx ecx, word [edx + 0x4a]
mov dword [esp + 0x20], ecx
lea edx, [esp + 0x68]
fild dword [esp + 0x20]
fmul dword [0x766428]
fstp qword [esp]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0x10
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec59f
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ec5fd
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec614
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec61d
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x3a], 0
je 0x4ec6fa
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11b6
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec660
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x3a]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec69b
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ec6f9
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec710
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec719
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x3c], 0
je 0x4ec7f6
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a3
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec75c
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x3c]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec797
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ec7f5
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec80c
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec815
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x30]
cmp word [edx + 0x4c], 0
je 0x4ec905
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c9
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec858
mov eax, 0x765608
mov edx, dword [esi + 0x30]
sub esp, 8
movsx ecx, word [edx + 0x4c]
mov dword [esp + 0x20], ecx
lea edx, [esp + 0x68]
fild dword [esp + 0x20]
fmul dword [0x765814]
fstp qword [esp]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0x10
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec8a6
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ec904
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ec91b
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ec924
cmp ebx, 0x1a
jg 0x4f02c4
cmp dword [esp + 0x12c], 1
je 0x4ecb17
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x34]
movsx edx, word [eax + 0x4e]
movsx ecx, word [ecx + 0x3e]
add edx, ecx
cmp edx, 1
je 0x4ecaf8
cmp byte [eax + 0x40], 0xff
je 0x4ecaf8
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11b8
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ec98a
mov eax, 0x765608
mov ecx, dword [esi + 0x30]
movsx edx, word [ecx + 0x4e]
mov ecx, dword [esi + 0x34]
movsx ecx, word [ecx + 0x3e]
add edx, ecx
push edx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ec9ce
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4eca2c
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
mov ecx, dword [ebp + ebx*4 + 0xe0]
inc ebx
push 0x200000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11ac
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4eca62
mov eax, 0x765608
mov ecx, dword [esi + 0x3c]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4eca99
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ecaf7
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ecb0e
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ecb17
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x30]
mov ecx, dword [esi + 0x34]
movsx eax, word [edx + 0x58]
movsx edx, word [ecx + 0x42]
add eax, edx
je 0x4ecc05
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11ae
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ecb62
mov eax, 0x765608
mov edx, dword [esi + 0x30]
movsx ecx, word [edx + 0x58]
mov edx, dword [esi + 0x34]
movsx edx, word [edx + 0x42]
add ecx, edx
push ecx
push eax
lea eax, [esp + 0x68]
push eax
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd4]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ecba6
push edx
mov ecx, eax
call fcn.004380d0
mov ecx, ebx
lea edi, [esp + 0x60]
shl ecx, 4
xor eax, eax
push 1
lea edx, [ecx + ebp + 0x154]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ecc04
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ecc1b
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ecc24
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x44], 0
je 0x4ecd01
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11b2
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ecc67
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x44]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ecca2
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ecd00
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ecd17
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ecd20
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x46], 0
je 0x4ecdfd
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11b4
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ecd63
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x46]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ecd9e
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ecdfc
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ece13
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ece1c
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x48], 0
je 0x4ecef9
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11b1
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ece5f
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x48]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ece9a
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ecef8
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ecf0f
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ecf18
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x4a], 0
je 0x4ecff5
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11b0
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ecf5b
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x4a]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ecf96
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ecff4
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed00b
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed014
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x4c], 0
je 0x4ed0f1
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11b3
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed057
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x4c]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed092
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed0f0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed107
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed110
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x4e], 0
je 0x4ed1ed
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11af
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed153
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x4e]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed18e
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed1ec
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed203
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed20c
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x50]
test al, al
je 0x4ed2ea
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x119c
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed24f
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x50]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed28b
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed2e9
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed300
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed309
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x51]
test al, al
je 0x4ed3e7
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x119d
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed34c
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x51]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed388
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed3e6
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed3fd
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed406
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x52]
test al, al
je 0x4ed4e4
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x119e
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed449
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x52]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed485
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed4e3
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed4fa
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed503
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x53]
test al, al
je 0x4ed5e1
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x119f
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed546
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x53]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed582
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed5e0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed5f7
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed600
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x54]
test al, al
je 0x4ed6de
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a0
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed643
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x54]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed67f
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed6dd
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed6f4
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed6fd
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x55]
test al, al
je 0x4ed7db
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a1
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed740
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x55]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed77c
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed7da
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed7f1
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed7fa
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov al, byte [edx + 0x56]
test al, al
je 0x4ed8d8
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a2
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed83d
mov eax, 0x765608
mov edx, dword [esi + 0x34]
xor ecx, ecx
mov cl, byte [edx + 0x56]
lea edx, [esp + 0x60]
push ecx
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed879
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed8d7
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed8ee
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed8f7
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x5a], 0
je 0x4ed9d4
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a9
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4ed93a
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x5a]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4ed975
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4ed9d3
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ed9ea
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ed9f3
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x5c], 0
je 0x4edad0
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x12c2
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4eda36
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x5c]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4eda71
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4edacf
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edae6
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4edaef
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x64], 0
je 0x4edbcc
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a7
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4edb32
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x64]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4edb6d
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4edbcb
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edbe2
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4edbeb
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x5e], 0
je 0x4edcc8
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a6
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4edc2e
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x5e]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4edc69
push edx
mov ecx, eax
call fcn.004380d0
mov eax, ebx
lea edi, [esp + 0x60]
shl eax, 4
or ecx, 0xffffffff
push 1
lea edx, [eax + ebp + 0x154]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
push ecx
mov ecx, edx
call fcn.00401450
test al, al
je 0x4edcc7
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, ecx
lea esi, [esp + 0x60]
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
push ecx
mov ecx, eax
call fcn.00404970
mov esi, dword [esp + 0x120]
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edcde
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4edce7
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x66], 0
je 0x4edd7c
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11aa
call fcn.006a8c20
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
jne 0x4edd2a
mov eax, 0x765608
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x66]
push ecx
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov eax, dword [ebp + ebx*4 + 0xdc]
mov edx, dword [ebp + 0xd0]
add esp, 0xc
mov dword [eax + 0xd8], edx
mov eax, dword [eax + 0xbc]
test eax, eax
je 0x4edd65
push edx
mov ecx, eax
call fcn.004380d0
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edd92
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4edd9b
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x60], 0
je 0x4ede16
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a8
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x60]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ede2c
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ede35
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x62], 0
je 0x4edeb0
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11a5
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x62]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edec6
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4edecf
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x68], 0
je 0x4edf4a
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c4
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x68]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edf60
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4edf69
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x6a], 0
je 0x4edfe4
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c5
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x6a]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4edffa
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee003
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x6c], 0
je 0x4ee07e
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c3
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x6c]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ee094
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee09d
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x6e], 0
je 0x4ee118
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c6
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x6e]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ee12e
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee137
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x70], 0
je 0x4ee1b2
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c7
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x70]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ee1c8
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee1d1
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
cmp word [edx + 0x72], 0
je 0x4ee24c
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c2
call fcn.006a8c20
mov edx, dword [esi + 0x34]
add esp, 8
lea ecx, [esp + 0x1c]
movsx eax, word [edx + 0x72]
push eax
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov edx, dword [ebp + 0xd0]
mov ecx, dword [ebp + ebx*4 + 0xdc]
add esp, 0xc
push edx
call fcn.004cc950
mov ecx, ebx
lea eax, [esp + 0x60]
shl ecx, 4
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ee262
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee26b
cmp ebx, 0x1a
jg 0x4f02c4
mov eax, dword [esi + 0x30]
mov cl, byte [eax + 0x65]
cmp cl, 0x47
mov cl, byte [eax + 0x42]
jl 0x4ee36f
cmp cl, 0x11
jne 0x4ee348
movsx edx, byte [eax + 0x64]
mov eax, dword [esi + 0x34]
movsx ecx, word [eax + 0x7c]
add edx, ecx
cmp edx, 1
jle 0x4ee348
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11bd
call fcn.006a8c20
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
add esp, 8
movsx edx, word [ecx + 0x7c]
movsx ecx, byte [eax + 0x64]
add edx, ecx
mov ecx, ebp
push edx
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x498]
push eax
call fcn.004eb210
test al, al
je 0x4ee2f6
mov ecx, dword [ebp + 0xd4]
push ecx
jmp 0x4ee2fd
mov edx, dword [ebp + 0xd8]
push edx
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
mov eax, dword [esi + 0x34]
mov edx, dword [esi + 0x30]
movsx ecx, word [eax + 0x7c]
movsx eax, byte [edx + 0x64]
add ecx, eax
push ecx
lea ecx, [esp + 0x20]
call fcn.004ce310
lea ecx, [esp + 0x64]
push eax
push ecx
call fcn.00727335
mov eax, ebx
add esp, 0xc
shl eax, 4
lea edx, [esp + 0x60]
push edx
lea ecx, [eax + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ee361
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee47d
cmp ebx, 0x1a
jg 0x4f02c4
jmp 0x4ee47d
cmp cl, 0x11
jne 0x4ee45e
mov edx, dword [esi + 0x34]
movsx ecx, byte [eax + 0x64]
movsx eax, word [edx + 0x7c]
add ecx, eax
cmp ecx, 1
jle 0x4ee45e
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11ce
call fcn.006a8c20
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
add esp, 8
movsx edx, word [ecx + 0x7c]
movsx ecx, byte [eax + 0x64]
add edx, ecx
mov ecx, ebp
push edx
mov edx, dword [0x93c97c]
mov eax, dword [edx + 0x498]
push eax
call fcn.004eb210
test al, al
je 0x4ee405
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
movsx edx, word [ecx + 0x7c]
movsx ecx, byte [eax + 0x65]
mov eax, dword [0x93c97c]
add edx, ecx
cmp edx, dword [eax + 0x498]
jl 0x4ee405
mov ecx, dword [ebp + 0xd4]
push ecx
jmp 0x4ee40c
mov edx, dword [ebp + 0xd8]
push edx
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x30]
movsx eax, word [eax + 0x7c]
movsx edx, byte [ecx + 0x65]
movsx ecx, byte [ecx + 0x64]
add edx, eax
add ecx, eax
push edx
push ecx
lea ecx, [esp + 0x24]
call fcn.004ce310
lea edx, [esp + 0x68]
push eax
push edx
call fcn.00727335
mov ecx, ebx
add esp, 0x10
shl ecx, 4
lea eax, [esp + 0x60]
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
inc ebx
mov al, byte [esp + 0x124]
test al, al
je 0x4ee474
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee47d
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x30]
movsx eax, word [edx + 0x7e]
xor edx, edx
mov dl, byte [ecx + 0x66]
add eax, edx
test eax, eax
jle 0x4ee5ba
mov ecx, 8
xor eax, eax
lea edi, [esp + 0xa0]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x13]
lea ecx, [esp + 0x2c]
push eax
call fcn.006b8ea0
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov byte [esp + 0x120], 6
mov edx, dword [ecx]
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11cf
call fcn.006a8c20
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x30]
add esp, 8
movsx edx, word [ecx + 0x7e]
xor ecx, ecx
mov cl, byte [eax + 0x66]
add edx, ecx
mov ecx, ebp
push edx
mov edx, dword [esp + 0x60]
mov eax, dword [edx + 0xc]
push eax
call fcn.004eb210
test al, al
je 0x4ee512
mov ecx, dword [ebp + 0xd4]
push ecx
jmp 0x4ee519
mov edx, dword [ebp + 0xd8]
push edx
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
mov eax, dword [esi + 0x34]
mov edx, dword [esi + 0x30]
movsx ecx, word [eax + 0x7e]
xor eax, eax
mov al, byte [edx + 0x66]
add eax, ecx
cmp eax, 1
jne 0x4ee559
lea ecx, [esp + 0x2c]
push ecx
push 0x1a94
call fcn.006a8c20
add esp, 8
lea ecx, [esp + 0x2c]
call fcn.004ce310
push eax
jmp 0x4ee579
push eax
push 0x7a3f58
lea eax, [esp + 0xa8]
push 0x20
push eax
call fcn.00728404
add esp, 0x10
lea ecx, [esp + 0xa0]
push ecx
lea ecx, [esp + 0x20]
call fcn.004ce310
push eax
lea edx, [esp + 0x68]
push pe_nt_image_headers32
push edx
call fcn.00728404
mov ecx, ebx
add esp, 0x10
shl ecx, 4
lea eax, [esp + 0x60]
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
lea ecx, [esp + 0x2c]
inc ebx
mov byte [esp + 0x118], 1
call fcn.00404460
mov al, byte [esp + 0x124]
test al, al
je 0x4ee5d0
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee5d9
cmp ebx, 0x1a
jg 0x4f02c4
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x30]
xor edx, edx
movsx edi, word [eax + 0x80]
mov dl, byte [ecx + 0x67]
add edi, edx
test edi, edi
jle 0x4ee72b
movsx edi, word [eax + 0x80]
mov ecx, dword [ebp + ebx*4 + 0xdc]
xor eax, eax
mov al, dl
push 0x200000
mov edx, dword [ecx]
push 1
add edi, eax
call dword [edx + 0x98]
lea eax, [esp + 0x1c]
push eax
push 0x11c1
call fcn.006a8c20
mov ecx, dword [esp + 0x64]
add esp, 8
test dword [ecx + 0x10], edi
je 0x4ee63c
mov edx, dword [ebp + 0xd4]
push edx
jmp 0x4ee643
mov eax, dword [ebp + 0xd8]
push eax
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
lea ecx, [esp + 0x13]
push ecx
lea ecx, [esp + 0x50]
call fcn.006b8ea0
lea eax, [edi - 1]
mov byte [esp + 0x118], 7
cmp eax, 0x7f
ja case.0x4ee675.9
xor edx, edx
mov dl, byte [eax + 0x4f0734]
jmp dword [edx*4 + 0x4f0710]
lea eax, [esp + 0x4c]
push eax
push 0x1a90
jmp 0x4ee6da
lea ecx, [esp + 0x4c]
push ecx
push 0x1a9d
jmp 0x4ee6da
lea edx, [esp + 0x4c]
push edx
push 0x1a92
jmp 0x4ee6da
lea eax, [esp + 0x4c]
push eax
push 0x1a93
jmp 0x4ee6da
lea ecx, [esp + 0x4c]
push ecx
push 0x1a94
jmp 0x4ee6da
lea edx, [esp + 0x4c]
push edx
push 0x1a95
jmp 0x4ee6da
lea eax, [esp + 0x4c]
push eax
push 0x1a96
jmp 0x4ee6da
lea ecx, [esp + 0x4c]
push ecx
push 0x1a97
call fcn.006a8c20
add esp, 8
lea ecx, [esp + 0x4c]
call fcn.004ce310
push eax
lea ecx, [esp + 0x20]
call fcn.004ce310
lea edx, [esp + 0x64]
push eax
push edx
call fcn.00727335
mov ecx, ebx
add esp, 0xc
shl ecx, 4
lea eax, [esp + 0x60]
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0d30
lea ecx, [esp + 0x4c]
inc ebx
mov byte [esp + 0x118], 1
call fcn.00404460
mov al, byte [esp + 0x124]
mov edi, dword [esp + 0x5c]
test al, al
je 0x4ee745
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee74e
cmp ebx, 0x1a
jg 0x4f02c4
mov edx, dword [esi + 0x30]
xor eax, eax
mov al, byte [edx + 0x68]
test eax, eax
je 0x4ee967
mov ecx, dword [esi + 0x34]
movsx edx, word [ecx + 0x82]
add eax, edx
test eax, eax
jle 0x4ee967
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
lea ecx, [esp + 0x1c]
push ecx
push 0x11c0
call fcn.006a8c20
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x30]
add esp, 8
movsx eax, word [edx + 0x82]
xor edx, edx
mov dl, byte [ecx + 0x68]
mov ecx, ebp
add eax, edx
push eax
mov eax, dword [edi + 0x58]
push eax
call fcn.004eb210
test al, al
je 0x4ee7c7
mov ecx, dword [ebp + 0xd4]
push ecx
jmp 0x4ee7ce
mov edx, dword [ebp + 0xd8]
push edx
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
mov eax, dword [esi + 0x34]
mov cl, byte [eax + 0x34]
cmp cl, 4
je 0x4ee84c
cmp cl, 5
je 0x4ee84c
cmp word [eax + 0x82], 0
jl 0x4ee8e1
mov al, byte [esp + 0x124]
test al, al
je 0x4ee97d
cmp ebx, 0x19
jg 0x4f0088
jmp 0x4ee986
cmp ebx, 0x1a
jg 0x4f02c4
mov eax, dword [esi + 0x30]
xor ecx, ecx
mov cl, byte [eax + 0x69]
mov eax, ecx
test eax, eax
je 0x4eeba1
mov edx, dword [esi + 0x34]
movsx ecx, word [edx + 0x84]
add eax, ecx
test eax, eax
jle 0x4eeba1
mov al, byte [esp + 0x124]
test al, al
je 0x4eebb7
mov al, byte [esp + 0x124]
test al, al
je 0x4f02c4
mov al, byte [esp + 0x128]
test al, al
je 0x4f01ba
mov eax, dword [esi + 0x34]
test eax, eax
je 0x4f03c5
xor edx, edx
mov dl, byte [eax + 0x34]
mov eax, edx
cmp eax, 5
jne 0x4f036e
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x200000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, dword [ebp + 0xd0]
push ecx
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
mov edx, dword [esi + 0x30]
mov ecx, dword [esi + 0x34]
xor eax, eax
mov al, byte [edx + 0x6e]
xor edx, edx
mov dl, byte [ecx + 0x58]
add eax, edx
cmp eax, 3
jle 0x4f0324
mov eax, 3
dec eax
je 0x4f0349
dec eax
je 0x4f033d
dec eax
jne 0x4f03c5
lea eax, [esp + 0x1c]
push eax
push 0x11d4
jmp 0x4f0353
lea eax, [esp + 0x1c]
push eax
push 0x11d3
jmp 0x4f0353
lea eax, [esp + 0x1c]
push eax
push 0x11d2
call fcn.006a8c20
mov edx, ebx
add esp, 8
lea ecx, [esp + 0x1c]
shl edx, 4
push ecx
lea ecx, [edx + ebp + 0x154]
jmp 0x4f03bf
cmp eax, 4
jne 0x4f03c5
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x800000
push 1
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, dword [ebp + 0xd0]
push ecx
mov ecx, dword [ebp + ebx*4 + 0xdc]
call fcn.004cc950
lea edx, [esp + 0x1c]
push edx
push 0x11d1
call fcn.006a8c20
mov ecx, ebx
add esp, 8
shl ecx, 4
lea eax, [esp + 0x1c]
push eax
lea ecx, [ecx + ebp + 0x154]
call fcn.004f0bf0
inc ebx
mov esi, dword [esi + 0x30]
test esi, esi
je 0x4f046c
mov eax, 0x55e63b89
mul dword [esi]
shr edx, 0x19
cmp edx, 9
jne 0x4f0414
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x800000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
mov eax, dword [ebp + 0xd8]
mov ecx, dword [ebp + ebx*4 + 0xdc]
push eax
call fcn.004cc950
lea ecx, [esp + 0x1c]
push ecx
push 0x11e4
jmp 0x4f044d
cmp byte [esi + 0x43], 0x14
jne 0x4f046c
mov ecx, dword [ebp + ebx*4 + 0xdc]
push 0x800000
push 1
mov edx, dword [ecx]
call dword [edx + 0x98]
mov eax, dword [ebp + 0xd8]
mov ecx, dword [ebp + ebx*4 + 0xdc]
push eax
call fcn.004cc950
lea ecx, [esp + 0x1c]
push ecx
push 0x11e5
call fcn.006a8c20
mov eax, ebx
add esp, 8
shl eax, 4
lea edx, [esp + 0x1c]
push edx
lea ecx, [eax + ebp + 0x154]
call fcn.004f0bf0
inc ebx
cmp ebx, 0x1e
jge 0x4f0493
mov ecx, ebx
mov esi, 0x1e
shl ecx, 4
sub esi, ebx
lea ebp, [ecx + ebp + 0x154]
push 0x7c4d78
mov ecx, ebp
call fcn.004f0d30
dec esi
jne 0x4f0484
lea ecx, [esp + 0xc0]
mov byte [esp + 0x118], 0
call fcn.00404460
lea ecx, [esp + 0x1c]
mov dword [esp + 0x118], 0xffffffff
call fcn.00404460
mov eax, ebx
mov ecx, dword [esp + 0x110]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x10c
ret 0x10