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

Disassembly:
mov ecx, dword [0xf33f68]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x9c]
cmp eax, dword [ecx + 8]
jbe 0x494013
sub esp, 0x11c
mov ecx, dword [esp + 0x128]
mov dword [esp + 0x104], ecx
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x108], ecx
mov ecx, dword [esp + 0x130]
mov dword [esp + 0x10c], ecx
mov byte [esp + 0x110], 0
mov ecx, dword [esp + 0x108]
cmp ecx, 4
jge 0x492b1e
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor eax, eax
xor ebx, ebx
jmp 0x492b5c
mov ebx, dword [esp + 0x104]
mov ebp, dword [esp + 0x10c]
add ebp, 0xfffffffc
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 4
add ebp, ebx
add ecx, 0xfffffffc
mov dword [esp + 0x108], ecx
mov dword [esp + 0x10c], esi
mov dword [esp + 0x104], ebp
mov eax, 4
cmp eax, 4
jne 0x492c84
cmp dword [ebx], 0x66695a54
jne 0x492c84
mov ecx, dword [esp + 0x108]
cmp ecx, 0x10
jge 0x492bac
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor eax, eax
xor ebx, ebx
jmp 0x492bea
mov ebx, dword [esp + 0x104]
mov ebp, dword [esp + 0x10c]
add ebp, 0xfffffff0
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 0x10
add ebp, ebx
add ecx, 0xfffffff0
mov dword [esp + 0x108], ecx
mov dword [esp + 0x10c], esi
mov dword [esp + 0x104], ebp
mov eax, 0x10
cmp eax, 0x10
jne 0x492c58
movzx ecx, byte [ebx]
test cl, cl
jne 0x492bfd
mov eax, 1
jmp 0x492c13
cmp cl, 0x32
jne 0x492c09
mov eax, 2
jmp 0x492c13
cmp cl, 0x33
jne 0x492c2c
mov eax, 3
mov dword [esp + 0x5c], eax
lea edi, [esp + 0x80]
xor eax, eax
call fcn.0046ca7a
xor eax, eax
jmp 0x492cbd
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov ebx, dword [ebp]
bswap ebx
mov dword [esp + eax*4 + 0x80], ebx
inc eax
cmp eax, 6
jge 0x492d7d
mov ebx, dword [esp + 0x108]
nop
cmp ebx, 4
jge 0x492d02
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor ecx, ecx
xor ebp, ebp
jmp 0x492d40
mov ebp, dword [esp + 0x104]
mov esi, dword [esp + 0x10c]
add esi, 0xfffffffc
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 4
add esi, ebp
add ebx, 0xfffffffc
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], edi
mov dword [esp + 0x104], esi
mov ecx, 4
cmp ecx, 4
jge 0x492cb0
mov byte [esp + 0x110], 1
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [esp + 0x5c]
cmp eax, 1
jle 0x492e49
mov ebx, dword [esp + 0x8c]
lea ebx, [ebx + ebx*4]
mov ebp, dword [esp + 0x90]
lea ebp, [ebp + ebp*2]
lea ebx, [ebx + ebp*2]
mov ebp, dword [esp + 0x94]
add ebx, ebp
mov ebp, dword [esp + 0x88]
lea ebx, [ebx + ebp*8]
mov ebp, dword [esp + 0x84]
add ebx, ebp
mov ebp, dword [esp + 0x80]
lea ecx, [ebp + ebx + 0x14]
mov esi, dword [esp + 0x108]
add ebx, ebp
cmp esi, ecx
jge 0x492e01
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
jmp 0x492e42
mov edx, dword [esp + 0x10c]
cmp edx, ecx
jb 0x49400d
mov ebp, dword [esp + 0x104]
sub edx, ebx
sub esi, ebx
lea ebx, [edx - 0x14]
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ecx, ebx
lea ebx, [ecx + ebp]
lea ebp, [esi - 0x14]
mov dword [esp + 0x108], ebp
mov dword [esp + 0x10c], edi
mov dword [esp + 0x104], ebx
xor ecx, ecx
jmp 0x493f45
jle 0x492e52
mov ecx, 8
jmp 0x492e57
mov ecx, 4
mov ebx, dword [esp + 0x8c]
imul ebx, ecx
mov ebp, dword [esp + 0x108]
cmp ebp, ebx
jge 0x492e9d
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor edx, edx
xor ebx, ebx
xor esi, esi
jmp 0x492ee9
mov edx, dword [esp + 0x10c]
cmp edx, ebx
jb 0x493f31
mov esi, dword [esp + 0x104]
mov edi, edx
sub edi, ebx
mov dword [esp + 0xbc], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, ebx
add edi, esi
sub ebp, ebx
mov dword [esp + 0x108], ebp
mov ebp, dword [esp + 0xbc]
mov dword [esp + 0x10c], ebp
mov dword [esp + 0x104], edi
mov dword [esp + 0xe4], esi
mov dword [esp + 0xe8], ebx
mov dword [esp + 0xec], edx
mov byte [esp + 0xf0], 0
mov ebx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x108]
cmp ebp, ebx
jge 0x492f47
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor ebx, ebx
xor esi, esi
jmp 0x492f81
mov edx, dword [esp + 0x10c]
cmp edx, ebx
jb 0x493f2a
mov esi, dword [esp + 0x104]
sub edx, ebx
mov edi, edx
neg edx
sar edx, 0x1f
and edx, ebx
add edx, esi
sub ebp, ebx
mov dword [esp + 0x108], ebp
mov dword [esp + 0x10c], edi
mov dword [esp + 0x104], edx
mov dword [esp + 0xd0], esi
mov ebp, dword [esp + 0x90]
lea ebp, [ebp + ebp*2]
shl ebp, 1
mov edi, dword [esp + 0x108]
cmp edi, ebp
jge 0x492fd1
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor edx, edx
xor ebp, ebp
xor edi, edi
jmp 0x493028
mov edx, dword [esp + 0x10c]
cmp edx, ebp
jb 0x493f23
mov dword [esp + 0x50], edx
mov esi, dword [esp + 0x104]
sub edx, ebp
mov dword [esp + 0xbc], edx
neg edx
sar edx, 0x1f
and edx, ebp
add edx, esi
sub edi, ebp
mov dword [esp + 0x108], edi
mov edi, dword [esp + 0xbc]
mov dword [esp + 0x10c], edi
mov dword [esp + 0x104], edx
mov edx, dword [esp + 0x50]
mov edi, esi
mov esi, dword [esp + 0xd0]
mov dword [esp + 0xd4], edi
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xdc], edx
mov byte [esp + 0xe0], 0
mov ebp, dword [esp + 0x94]
mov edi, dword [esp + 0x108]
cmp edi, ebp
jge 0x493088
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor ebp, ebp
xor edx, edx
xor edi, edi
jmp 0x4930df
mov edx, dword [esp + 0x10c]
cmp edx, ebp
jb 0x493f1c
mov dword [esp + 0x4c], edx
mov esi, dword [esp + 0x104]
sub edx, ebp
mov dword [esp + 0xbc], edx
neg edx
sar edx, 0x1f
and edx, ebp
add edx, esi
sub edi, ebp
mov dword [esp + 0x108], edi
mov edi, dword [esp + 0xbc]
mov dword [esp + 0x10c], edi
mov dword [esp + 0x104], edx
mov edx, dword [esp + 0x4c]
mov edi, esi
mov esi, dword [esp + 0xd0]
mov dword [esp + 0x48], ebx
add ecx, 4
imul ecx, dword [esp + 0x88]
mov esi, dword [esp + 0x108]
cmp esi, ecx
jge 0x493124
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
jmp 0x493172
mov ebx, dword [esp + 0x10c]
cmp ebx, ecx
jb 0x493f15
mov eax, dword [esp + 0x104]
sub ebx, ecx
mov dword [esp + 0xbc], ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
add eax, ebx
sub esi, ecx
mov dword [esp + 0x108], esi
mov ebx, dword [esp + 0xbc]
mov dword [esp + 0x10c], ebx
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x84]
mov esi, dword [esp + 0x108]
cmp esi, ecx
jge 0x4931b3
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor ecx, ecx
xor esi, esi
jmp 0x493203
mov ebx, dword [esp + 0x10c]
cmp ebx, ecx
jb 0x493f0e
mov eax, dword [esp + 0x104]
sub ebx, ecx
mov dword [esp + 0xbc], ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub esi, ecx
mov dword [esp + 0x108], esi
mov esi, dword [esp + 0xbc]
mov dword [esp + 0x10c], esi
mov dword [esp + 0x104], ebx
mov ebx, dword [esp + 0x48]
mov esi, eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x40], ecx
mov dword [esp + 0xc8], esi
mov esi, dword [esp + 0x80]
mov ecx, dword [esp + 0x108]
cmp ecx, esi
jge 0x49324f
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor esi, esi
xor ecx, ecx
jmp 0x49329f
mov ebx, dword [esp + 0x10c]
cmp ebx, esi
jb 0x493f05
mov eax, dword [esp + 0x104]
sub ebx, esi
mov dword [esp + 0xbc], ebx
neg ebx
sar ebx, 0x1f
and ebx, esi
add ebx, eax
sub ecx, esi
mov dword [esp + 0x108], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x10c], ecx
mov dword [esp + 0x104], ebx
mov ebx, dword [esp + 0x48]
mov ecx, eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xc4], ecx
movzx ecx, byte [esp + 0x110]
test cl, cl
jne 0x4933d1
mov dword [esp + 0x4c], edx
mov dword [esp + 0x44], ebp
mov dword [esp + 0x3c], esi
mov dword [esp + 0xcc], edi
mov ecx, dword [esp + 0x108]
nop
mov esi, dword [esp + 0x104]
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
cmp ecx, 2
jle 0x49335b
cmp byte [esi], 0xa
jne 0x493355
lea ebx, [ecx + esi - 1]
cmp byte [ebx], 0xa
je 0x493316
mov ebx, dword [esp + 0x48]
xor ecx, ecx
xor esi, esi
jmp 0x49335f
mov dword [esp], 0
lea eax, [esi + 1]
mov dword [esp + 4], eax
lea eax, [ecx - 2]
mov dword [esp + 8], eax
call fcn.004549c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x44]
mov edi, dword [esp + 0xcc]
mov esi, ecx
mov ecx, eax
mov eax, dword [esp + 0x5c]
jmp 0x49335f
xor ecx, ecx
xor esi, esi
jmp 0x49335f
xor ecx, ecx
xor esi, esi
mov dword [esp + 0x100], ecx
mov ecx, dword [esp + 0x90]
test ecx, ecx
je 0x4933a5
mov dword [esp + 0x74], ecx
mov dword [esp + 0x9c], esi
lea eax, [0x790240]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00450b30
mov eax, dword [esp + 0xc]
mov dword [esp + 0x118], eax
mov ecx, dword [esp + 0x74]
xor edx, edx
jmp 0x493410
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov dword [ebx + edx], eax
mov ebp, dword [esp + 0xbc]
lea edx, [ebp + 1]
mov ecx, dword [esp + 0x74]
mov eax, ebx
cmp edx, ecx
jge 0x493726
mov ebx, dword [esp + 0xd8]
nop
cmp ebx, 4
jge 0x493454
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xd4], 0
mov byte [esp + 0xe0], 1
xor ebx, ebx
xor ebp, ebp
jmp 0x493492
mov ebp, dword [esp + 0xd4]
mov esi, dword [esp + 0xdc]
add esi, 0xfffffffc
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 4
add esi, ebp
add ebx, 0xfffffffc
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], edi
mov dword [esp + 0xd4], esi
mov ebx, 4
cmp ebx, 4
jl 0x4936f2
mov ebx, edx
shl edx, 4
mov ebp, dword [ebp]
bswap ebp
mov dword [eax + edx + 8], ebp
mov ebp, dword [esp + 0xd8]
nop
test ebp, ebp
jne 0x4934e4
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xd4], 0
mov byte [esp + 0xe0], 1
xor ebp, ebp
xor esi, esi
jmp 0x49352a
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0xdc]
dec edi
mov dword [esp + 0xbc], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 1
add edi, esi
dec ebp
mov dword [esp + 0xd8], ebp
mov ebp, dword [esp + 0xbc]
mov dword [esp + 0xdc], ebp
mov dword [esp + 0xd4], edi
mov ebp, 1
test ebp, ebp
je 0x4936be
movzx ebp, byte [esi]
xchg ebp, eax
test al, al
xchg ebp, eax
xchg ebp, ebx
setne bl
xchg ebp, ebx
xchg ebp, ebx
mov byte [eax + edx + 0xc], bl
xchg ebp, ebx
mov ebp, dword [esp + 0xd8]
test ebp, ebp
jne 0x493582
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xd4], 0
mov byte [esp + 0xe0], 1
xor ebp, ebp
xor esi, esi
jmp 0x4935c8
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0xdc]
dec edi
mov dword [esp + 0xbc], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 1
add edi, esi
dec ebp
mov dword [esp + 0xd8], ebp
mov ebp, dword [esp + 0xbc]
mov dword [esp + 0xdc], ebp
mov dword [esp + 0xd4], edi
mov ebp, 1
test ebp, ebp
jne 0x4935db
mov byte [esp + 0xe0], 1
mov ebp, 0
jmp 0x4935de
movzx ebp, byte [esi]
je 0x493692
xchg ebp, eax
movzx eax, al
xchg ebp, eax
mov esi, dword [esp + 0x44]
cmp esi, ebp
jle 0x493692
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xb8], edx
mov edi, dword [esp + 0x4c]
sub edi, ebp
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, ebp
mov ecx, dword [esp + 0xcc]
add edi, ecx
sub esi, ebp
xor ebp, ebp
jmp 0x493eef
mov dword [esp], 0
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
call fcn.004549c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
jmp 0x493660
mov dword [esp], 0
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call fcn.004549c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x118]
mov dword [ebx + edx + 4], ecx
mov ecx, dword [0xf34078]
test ecx, ecx
je 0x4933fd
call fcn.0046c7e0
mov dword [edi], eax
mov ecx, dword [ebx + edx]
mov dword [edi + 4], ecx
jmp 0x4933fd
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov byte [esp + 0xe0], 1
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov byte [esp + 0xe0], 1
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [esp + 0x8c]
lea ecx, [0x797320]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00450b30
mov eax, dword [esp + 0xc]
mov dword [esp + 0x114], eax
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x60], ecx
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0xd0]
mov dword [esp + 0xa8], eax
xor eax, eax
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa8]
jmp 0x4937ae
lea ecx, [ebx + 1]
mov ebx, dword [esp + 0x60]
mov ebx, dword [esp + 0xc8]
mov esi, edi
mov edi, dword [esp + 0xd0]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x98]
cmp ebx, ecx
jge 0x493a09
mov ebp, dword [esp + 0x5c]
cmp ebp, 1
jg 0x4938a2
mov ebp, dword [esp + 0xe8]
nop
cmp ebp, 4
jge 0x49380f
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xe4], 0
mov byte [esp + 0xf0], 1
xor ebp, ebp
xor ebp, ebp
mov dword [esp + 0xc0], ebp
xor ebp, ebp
jmp 0x493868
mov ecx, dword [esp + 0xe4]
mov esi, dword [esp + 0xec]
add esi, 0xfffffffc
mov dword [esp + 0xbc], esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 4
add esi, ecx
add ebp, 0xfffffffc
mov dword [esp + 0xe8], ebp
mov ebp, dword [esp + 0xbc]
mov dword [esp + 0xec], ebp
mov dword [esp + 0xe4], esi
mov esi, dword [esp + 0x74]
mov ebp, 4
mov dword [esp + 0xc0], ecx
mov ecx, dword [esp + 0x60]
cmp ebp, 4
jl 0x49397d
mov ebp, dword [esp + 0xc0]
mov ebp, dword [ebp]
bswap ebp
mov dword [esp + 0xb4], ebp
sar ebp, 0x1f
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xa0]
jmp 0x4938ed
lea eax, [esp + 0xe4]
mov dword [esp], eax
call fcn.00492920
movzx eax, byte [esp + 0xc]
test al, al
je 0x4939dd
mov ebp, dword [esp + 4]
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x98]
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0xd0]
mov dword [esp + 0x7c], ebp
mov ebp, edx
mov edx, dword [esp + 0x48]
lea ecx, [ebx + ebx*2]
mov esi, dword [esp + 0x7c]
mov dword [eax + ecx*4], esi
mov dword [eax + ecx*4 + 4], ebp
cmp ebx, edx
jae 0x493ede
movzx ebp, byte [ebx + edi]
xchg ebp, eax
movzx esi, al
xchg ebp, eax
mov edi, dword [esp + 0x74]
cmp edi, esi
jle 0x4939b1
lea esi, [eax + ecx*4 + 8]
xchg ebp, eax
mov byte [esi], al
xchg ebp, eax
mov ebp, dword [esp + 0x40]
cmp ebx, ebp
jge 0x49394a
lea esi, [eax + ecx*4 + 9]
mov ebp, dword [esp + 0xc8]
movzx ebp, byte [ebx + ebp]
xchg ebp, eax
test al, al
xchg ebp, eax
xchg ebp, ebx
setne bl
xchg ebp, ebx
xchg ebp, eax
mov byte [esi], al
xchg ebp, eax
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
cmp ebx, esi
jge 0x49378c
lea ecx, [eax + ecx*4 + 0xa]
mov esi, dword [esp + 0xc4]
movzx esi, byte [esi + ebx]
xchg esi, eax
test al, al
xchg esi, eax
xchg esi, ebx
setne bl
xchg esi, ebx
xchg esi, eax
mov byte [ecx], al
xchg esi, eax
mov esi, dword [esp + 0x3c]
jmp 0x49378c
mov byte [esp + 0xf0], 1
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
test ecx, ecx
jne 0x493a77
je 0x493a16
mov edx, 1
jmp 0x493a52
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x797320]
mov dword [esp + 0x10], eax
call fcn.00450c90
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x74]
mov ebx, edx
mov edx, ecx
mov ecx, ebx
lea ebx, [edx + edx*2]
mov dword [eax + ebx*4 - 0xc], 0
mov dword [eax + ebx*4 - 8], 0x80000000
lea ebx, [eax + ebx*4 - 0xc]
mov byte [ebx + 8], 0
mov byte [ebx + 9], 0
mov byte [ebx + 0xa], 0
jmp 0x493a79
mov edx, ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x60], edx
mov dword [esp + 0xf4], eax
lea ebx, [0x7a12c0]
mov dword [esp], ebx
call fcn.0040d540
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x74]
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov ecx, dword [0xf34078]
test ecx, ecx
jne 0x493acc
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0x120]
mov ebp, dword [esp + 0x100]
jmp 0x493af8
call fcn.0046c800
mov ecx, dword [esp + 0x118]
mov dword [edi], ecx
mov edx, dword [esp + 0xf4]
mov dword [edi + 4], edx
mov ebx, dword [esp + 0x120]
mov dword [edi + 8], ebx
mov ebp, dword [esp + 0x100]
mov dword [edi + 0xc], ebp
mov dword [esp + 0xfc], eax
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax + 0x18], ecx
mov esi, dword [esp + 0x64]
mov dword [eax + 0x1c], esi
mov dword [eax + 0x14], edx
mov esi, dword [esp + 0x124]
mov dword [eax + 4], esi
mov dword [eax], ebx
mov ebx, dword [esp + 0x9c]
mov dword [eax + 0x24], ebx
mov dword [eax + 0x20], ebp
call fcn.0046d600
mov eax, dword [esp]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0x60]
xor ebp, ebp
jmp 0x493b58
inc ebp
mov eax, dword [esp + 0x68]
mov ecx, esi
mov edx, edi
cmp ebp, ebx
jge 0x493d2e
lea esi, [ebp + ebp*2]
mov edi, dword [edx + esi*4 + 4]
mov dword [esp + 0xb0], edi
mov edx, dword [edx + esi*4]
mov dword [esp + 0xb4], edx
cmp edi, ecx
xchg edi, ebx
sete bl
xchg edi, ebx
setl cl
cmp edx, eax
setbe dl
and edx, edi
or ecx, edx
test cl, cl
je 0x493bdb
mov dword [esp + 0xbc], esi
lea edx, [ebp + 1]
cmp ebx, edx
je 0x493bfd
jbe 0x493ed5
mov dword [esp + 0xb8], edx
mov edi, dword [esp + 0xf4]
mov ecx, dword [edi + esi*4 + 0x10]
lea edx, [edi + esi*4 + 0xc]
cmp dword [edx], eax
seta dl
mov esi, dword [esp + 0x6c]
cmp ecx, esi
setg cl
sete al
and edx, eax
or edx, ecx
test dl, dl
je 0x493b4f
jmp 0x493beb
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0xf4]
jmp 0x493b4f
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0xb8]
mov esi, dword [esp + 0xbc]
mov ebp, dword [esp + 0xb4]
mov edi, dword [esp + 0xfc]
mov dword [edi + 0x28], ebp
mov ebp, dword [esp + 0xb0]
mov dword [edi + 0x2c], ebp
mov dword [edi + 0x30], 0xffffffff
mov dword [edi + 0x34], 0x7fffffff
mov ecx, dword [edi + 0xc]
mov ebp, dword [esp + 0xf4]
lea ebp, [ebp + esi*4 + 8]
movzx ebp, byte [ebp]
cmp ecx, ebp
jbe 0x493ece
mov ecx, dword [0xf34078]
mov esi, dword [edi + 8]
shl ebp, 4
add ebp, esi
test ecx, ecx
jne 0x493c56
cmp ebx, edx
jmp 0x493c69
mov ecx, edi
call fcn.0046c7e0
mov dword [edi], ebp
mov esi, dword [ecx + 0x38]
mov dword [edi + 4], esi
cmp ebx, edx
mov edi, ecx
mov dword [edi + 0x38], ebp
jg 0x493d10
mov ecx, dword [edi + 0x24]
test ecx, ecx
je 0x493d2e
mov edx, dword [edi + 0x20]
mov ebx, dword [edi + 0x28]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
call fcn.00490720
movzx eax, byte [esp + 0x35]
test al, al
je 0x493d62
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x18]
mov dword [esp + 0xf8], edi
mov eax, dword [esp + 0x20]
mov dword [esp + 0x70], eax
movzx ecx, byte [esp + 0x34]
mov byte [esp + 0x3a], cl
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x78], edi
mov edi, dword [esp + 0xfc]
mov dword [edi + 0x28], edx
mov dword [edi + 0x2c], ebp
mov dword [edi + 0x30], ebx
mov dword [edi + 0x34], esi
mov edx, dword [edi + 8]
mov ebx, dword [edi + 0xc]
mov dword [esp + 0x58], ebx
mov ebp, dword [esp + 0x78]
xor esi, esi
jmp 0x493d80
jbe 0x493d59
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xf4]
mov edx, dword [ecx + eax*4 + 0xc]
mov eax, dword [ecx + eax*4 + 0x10]
mov dword [edi + 0x30], edx
mov dword [edi + 0x34], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0
add esp, 0x11c
ret
mov eax, edx
mov ecx, ebx
call fcn.0046c850
mov edi, dword [esp + 0xfc]
jmp 0x493d2e
add edx, 0x10
mov ebx, dword [esp + 0x54]
lea esi, [ebx + 1]
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0xfc]
cmp esi, ebx
jge 0x493e1b
mov dword [esp + 0x54], esi
mov edi, dword [edx + 4]
mov ebx, dword [edx + 8]
movzx esi, byte [edx + 0xc]
cmp edi, ebp
je 0x493d9e
xor edi, edi
jmp 0x493df2
xchg esi, eax
mov byte [esp + 0x3b], al
xchg esi, eax
mov dword [esp + 0x118], edx
mov dword [esp + 0xbc], ebx
mov eax, dword [edx]
mov dword [esp], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.00403420
movzx eax, byte [esp + 0xc]
movzx ecx, byte [esp + 0x3a]
mov edx, dword [esp + 0x118]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x78]
movzx esi, byte [esp + 0x3b]
mov edi, eax
mov eax, dword [esp + 0x70]
xchg edi, eax
test al, al
xchg edi, eax
je 0x493d6b
cmp ebx, eax
jne 0x493d6b
xchg esi, eax
cmp al, cl
xchg esi, eax
jne 0x493d6b
mov edi, dword [esp + 0xfc]
mov edx, dword [esp + 0x54]
jmp 0x493e20
mov edx, 0xffffffff
cmp edx, 0xffffffff
je 0x493e5b
mov ecx, dword [edi + 0xc]
cmp edx, ecx
jae 0x493ec7
mov eax, dword [0xf34078]
mov ecx, dword [edi + 8]
shl edx, 4
add ecx, edx
test eax, eax
je 0x493e53
mov eax, edi
call fcn.0046c7e0
mov dword [edi], ecx
mov edx, dword [eax + 0x38]
mov dword [edi + 4], edx
mov edi, eax
mov dword [edi + 0x38], ecx
jmp 0x493d62
lea eax, [0x790240]
mov dword [esp], eax
call fcn.0040d540
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x78]
mov dword [eax + 4], ecx
mov ecx, dword [0xf34078]
test ecx, ecx
jne 0x493e8e
mov ecx, dword [esp + 0xf8]
mov edx, dword [esp + 0xfc]
jmp 0x493eac
call fcn.0046c7f0
mov ecx, dword [esp + 0xf8]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov edx, dword [esp + 0xfc]
mov ebx, dword [edx + 0x38]
mov dword [edi + 8], ebx
mov dword [eax], ecx
mov ecx, dword [esp + 0x70]
mov dword [eax + 8], ecx
movzx ecx, byte [esp + 0x3a]
mov byte [eax + 0xc], cl
mov dword [edx + 0x38], eax
mov edi, edx
jmp 0x493d62
mov eax, edx
call fcn.0046c850
mov eax, ebp
call fcn.0046c850
mov eax, edx
mov ecx, ebx
call fcn.0046c850
mov eax, ebx
mov ecx, edx
call fcn.0046c850
inc ebp
mov ecx, dword [esp + 0xcc]
cmp ebp, esi
jge 0x493644
movzx ecx, byte [ebp + edi]
test cl, cl
jne 0x493ee7
jmp 0x493626
mov ecx, esi
mov edx, ebx
call fcn.0046c890
mov edx, ebx
call fcn.0046c890
mov edx, ebx
call fcn.0046c890
mov ecx, ebp
call fcn.0046c890
mov ecx, ebp
call fcn.0046c890
mov ecx, ebx
call fcn.0046c890
mov ecx, ebx
call fcn.0046c890
mov ebx, dword [ebp]
bswap ebx
mov dword [esp + ecx*4 + 0x80], ebx
inc ecx
cmp ecx, 6
jge 0x494005
mov ebx, dword [esp + 0x108]
nop
cmp ebx, 4
jge 0x493f8a
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x104], 0
mov byte [esp + 0x110], 1
xor edx, edx
xor ebp, ebp
jmp 0x493fc8
mov ebp, dword [esp + 0x104]
mov esi, dword [esp + 0x10c]
add esi, 0xfffffffc
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 4
add esi, ebp
add ebx, 0xfffffffc
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], edi
mov dword [esp + 0x104], esi
mov edx, 4
cmp edx, 4
jge 0x493f38
mov byte [esp + 0x110], 1
mov eax, dword [0xed1238]
mov ecx, dword [0xed123c]
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], ecx
add esp, 0x11c
ret
cmp eax, 1
jmp 0x492e49
call fcn.0046c890
nop
call fcn.0046b3d0
jmp fcn.00492a90