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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xf8]
cmp eax, dword [ecx + 8]
jbe 0x4d380f
sub esp, 0x178
mov eax, dword [esp + 0x180]
mov dword [esp], eax
mov ecx, dword [esp + 0x184]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x188]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 0
call fcn.004d08f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
test eax, eax
jne 0x4d1eb3
test edx, edx
je 0x4d19a8
mov eax, dword [esp + 0x188]
test eax, eax
je 0x4d18a6
test eax, 0x200
jne 0x4d18a6
mov ecx, dword [esp + 0x180]
lea eax, [0x752f6c]
jmp 0x4d18cc
mov ecx, dword [esp + 0x180]
mov dword [esp], ecx
mov ecx, dword [esp + 0x184]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0048b1d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xd8], ecx
mov dword [esp + 0x34], eax
lea edx, [0x6b5980]
mov dword [esp], edx
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x6ceb53]
mov dword [eax], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d1915
mov ecx, dword [esp + 0xd8]
mov dword [eax + 0xc], ecx
jmp 0x4d1928
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xd8]
call fcn.004630d0
mov eax, ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x4d1983
mov dword [esp], ecx
lea edx, [0x75108c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d1979
mov dword [edx + 0x40], eax
jmp 0x4d1981
lea edi, [edx + 0x40]
call fcn.004630d0
mov ecx, edx
mov dword [esp], ecx
call fcn.004d0320
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
add esp, 0x178
ret
mov dword [esp + 0xac], ebx
mov dword [esp + 0x138], ebp
mov dword [esp + 0x134], esi
test ebx, ebx
je 0x4d19d3
test ebx, 0x200
jne 0x4d19d3
mov eax, esi
lea ecx, [0x752f6c]
jmp 0x4d1a02
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.0048b1d0
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0xac]
mov ebp, dword [esp + 0x138]
mov ecx, eax
mov eax, dword [esp + 0x134]
mov dword [esp + 0x30], ecx
mov dword [esp + 0xd4], esi
nop
mov edx, ebx
and ebx, 0x1f
mov dword [esp + 0xa8], ebx
cmp ebx, 0x14
je 0x4d1a23
xor edi, edi
jmp 0x4d1a65
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
call fcn.00489ec0
mov eax, dword [esp + 0xc]
test eax, eax
sete al
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0xac]
mov ebx, dword [esp + 0xa8]
mov ebp, dword [esp + 0x138]
mov esi, dword [esp + 0xd4]
mov edi, eax
mov eax, dword [esp + 0x134]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x4d1ddf
cmp ebx, 0x15
je 0x4d1b7f
cmp ebx, 0x19
jne 0x4d1aae
mov dword [esp], ecx
mov dword [esp + 4], esi
call fcn.004de340
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, eax
mov ebp, edx
mov edx, dword [esp + 0x138]
mov eax, ecx
mov ecx, dword [esp + 0xac]
jmp 0x4d1c9e
lea eax, [0x6b5980]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x6ceb53]
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d1aec
mov ecx, dword [esp + 0xd4]
mov dword [eax + 0xc], ecx
jmp 0x4d1aff
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xd4]
call fcn.004630d0
mov eax, ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x4d1b5a
mov dword [esp], ecx
lea edx, [0x75108c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d1b50
mov dword [edx + 0x40], eax
jmp 0x4d1b58
lea edi, [edx + 0x40]
call fcn.004630d0
mov ecx, edx
mov dword [esp], ecx
call fcn.004d0320
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
add esp, 0x178
ret
mov eax, dword [ecx + 0x4c]
mov dword [esp], esi
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
lea ecx, [eax - 2]
cmp ecx, 0xa
jbe 0x4d1c06
cmp eax, 0x18
je 0x4d1c06
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x4c]
mov edx, dword [esp + 0xd4]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
lea edx, [0x752f6c]
cmp eax, edx
jne 0x4d37f2
mov dword [esp], ecx
call fcn.00485640
mov eax, dword [0x8e6780]
mov ecx, dword [0x8e6784]
mov edx, dword [esp + 4]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00485900
movzx eax, byte [esp + 0xc]
test al, al
je 0x4d1d0e
mov ecx, dword [esp + 0xac]
test ecx, 0x200
je 0x4d1c1e
mov edx, dword [esp + 0x138]
jmp 0x4d1c98
test ecx, 0x80
je 0x4d1c31
mov edx, dword [esp + 0x138]
mov ebp, dword [edx]
jmp 0x4d1c3a
mov edx, dword [esp + 0x138]
mov ebp, edx
test ebp, ebp
setne bl
xor ebx, 1
test bl, bl
je 0x4d1c98
mov eax, dword [esp + 0x30]
mov dword [esp], eax
mov ecx, dword [esp + 0xd4]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.0048baa0
mov eax, dword [esp + 0x134]
mov dword [esp], eax
mov ecx, dword [esp + 0x138]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xac]
mov dword [esp + 8], edx
call fcn.0048a1b0
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x138]
xor eax, eax
xor ebx, ebx
xor ebp, ebp
mov dword [esp + 0x78], eax
lea edi, [esp + 0x164]
mov esi, eax
xor eax, eax
call fcn.0046336b
mov ecx, dword [esp + 0x17c]
mov eax, edx
mov edx, dword [ecx + 0x38]
test edx, edx
je 0x4d1cdb
lea edi, [esp + 0x164]
mov esi, edx
call fcn.0046384e
mov ecx, dword [esp + 0x17c]
mov esi, dword [esp + 0x78]
mov dword [esp + 0x10c], ebx
mov dword [esp + 0x108], ebp
lea edx, [ecx + 0x38]
mov dword [esp + 0x130], edx
xor edi, edi
xor edi, edi
mov dword [esp + 0xf4], edi
xor edi, edi
mov dword [esp + 0xf8], edi
xor edi, edi
jmp 0x4d1f5c
lea eax, [0x6b5980]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x6ceb53]
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 8], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d1d4c
mov ecx, dword [esp + 0xd4]
mov dword [eax + 0xc], ecx
jmp 0x4d1d5f
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xd4]
call fcn.004630d0
mov eax, ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x4d1dba
mov dword [esp], ecx
lea edx, [0x75108c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d1db0
mov dword [edx + 0x40], eax
jmp 0x4d1db8
lea edi, [edx + 0x40]
call fcn.004630d0
mov ecx, edx
mov dword [esp], ecx
call fcn.004d0320
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
add esp, 0x178
ret
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.004d6660
mov eax, dword [esp + 4]
nop
movzx ecx, byte [0x8e6f00]
test cl, cl
je 0x4d1e29
lea ecx, [0x6989c0]
mov dword [0x8e6f04], ecx
mov edx, dword [0x90e260]
test edx, edx
jne 0x4d1e1c
mov dword [0x8e6f08], eax
jmp 0x4d1e2f
lea edi, [0x8e6f08]
call fcn.004630d0
jmp 0x4d1e2f
lea ecx, [0x6989c0]
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], eax
mov ecx, dword [esp + 0x154]
test ecx, ecx
je 0x4d1e5f
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x4d1e65
or edx, 0x80
jmp 0x4d1e65
xor edx, edx
xor ecx, ecx
xor eax, eax
mov ebx, dword [esp + 0x134]
mov dword [esp], ebx
mov ebx, dword [esp + 0x138]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xac]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.0048a1b0
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
add esp, 0x178
ret
mov dword [esp + 0x38], eax
mov dword [esp + 0xdc], ecx
nop
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0xc]
mov dword [esp + 0xa4], ecx
mov dword [esp], eax
call fcn.004d0320
mov eax, dword [esp + 0x17c]
mov edx, dword [eax + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 0xc]
cmp edx, eax
jb 0x4d1f4f
mov ebx, dword [esp + 0xa4]
lea ebp, [ebx - 1]
cmp eax, ebp
jb 0x4d1f46
mov esi, dword [esp + 0x38]
mov esi, dword [esi + 0x10]
mov edi, dword [esp + 0xdc]
mov dword [esp], edi
sub edx, ebx
inc edx
mov edi, edx
neg edx
sar edx, 0x1f
and ebp, edx
add ecx, ebp
mov dword [esp + 4], ecx
sub eax, ebx
inc eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
call esi
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x18c], eax
mov dword [esp + 0x190], ecx
add esp, 0x178
ret
mov ecx, eax
mov eax, ebp
call fcn.004631b0
mov ecx, eax
call fcn.00463190
mov ecx, edx
mov edi, dword [esp + 0x58]
mov dword [esp + 0x58], edi
mov dword [esp], ecx
mov dword [esp + 4], 9
call fcn.004d0450
mov eax, dword [esp + 0x17c]
mov ecx, dword [eax + 0x10]
cmp ecx, 5
je 0x4d30aa
cmp ecx, 1
jne 0x4d37da
nop
mov ecx, dword [eax + 0xc]
mov dword [esp + 0xa4], ecx
mov dword [esp], eax
call fcn.004d0510
mov eax, dword [esp + 0x17c]
mov edx, dword [eax + 8]
mov ecx, dword [eax]
mov ebx, dword [eax + 0xc]
lea ebp, [ebx - 1]
cmp edx, ebp
jb 0x4d37d3
mov esi, dword [esp + 0xa4]
lea edi, [esi - 1]
cmp ebp, edi
jb 0x4d37ca
sub edx, esi
lea eax, [edx + 1]
mov dword [esp + 0x6c], eax
mov edx, eax
neg eax
sar eax, 0x1f
and edi, eax
lea eax, [ecx + edi]
mov dword [esp + 0x104], eax
mov dword [esp], eax
sub ebx, esi
mov dword [esp + 0x68], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
call fcn.004d6ba0
mov eax, dword [esp + 0xc]
movzx ecx, byte [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test cl, cl
je 0x4d37b2
mov dword [esp + 0x100], eax
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], ebx
mov ecx, dword [esp + 0xa8]
cmp ecx, 0x15
jne 0x4d20f3
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0xd4]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x58]
test edx, edx
je 0x4d20b2
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048bb50
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xf4]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf8]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x58]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.0048a1b0
mov edi, dword [esp + 0x58]
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0xf8]
jmp 0x4d20e6
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048bc30
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00488e40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
xor edx, edx
mov ebx, edi
mov ebp, eax
mov esi, ecx
jmp 0x4d234d
lea ecx, [0x698940]
mov dword [esp], ecx
mov ebx, dword [esp + 0x108]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call fcn.00410060
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
movzx ecx, byte [esp + 0x14]
test cl, cl
je 0x4d214f
mov ecx, dword [esp + 0x78]
cmp ecx, eax
jbe 0x4d37ad
lea edx, [eax + eax*8]
mov ebx, dword [esp + 0x10c]
lea edx, [ebx + edx*8]
mov eax, ebx
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
jmp 0x4d2195
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x78]
xor edx, edx
jmp 0x4d30e8
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
mov edx, dword [esp + 0x110]
jmp 0x4d2195
xor edx, edx
test edx, edx
je 0x4d221e
mov dword [esp + 0x110], edx
mov edi, ecx
movzx ecx, byte [edx + 0x41]
mov byte [esp + 0x2f], cl
mov ecx, dword [edx + 0x2c]
mov dword [esp + 0x128], ecx
mov edx, dword [edx + 0x30]
mov dword [esp + 0xa0], edx
mov dword [esp + 0xc8], eax
xor eax, eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x3c], eax
mov dword [esp + 0xc0], ecx
mov ecx, dword [esp + 0x138]
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xb8], edx
mov edx, dword [esp + 0x134]
mov dword [esp + 0xe0], edx
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xb8]
jmp 0x4d3310
mov edx, dword [esp + 0x17c]
movzx edi, byte [edx + 0x45]
xchg edi, eax
test al, al
xchg edi, eax
je 0x4d230b
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00409260
mov eax, dword [esp + 0xc]
lea ecx, [0x68e840]
mov dword [esp + 0x15c], ecx
mov dword [esp + 0x160], eax
lea eax, [0x6d52c8]
mov dword [esp], eax
mov dword [esp + 4], 0x16
lea edx, [esp + 0x15c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004beaf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x17c]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x4d22f1
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d22e9
mov dword [edx + 0x40], eax
jmp 0x4d22f1
lea edi, [edx + 0x40]
call fcn.004630d0
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
xor edi, edi
xor edi, edi
mov dword [esp + 0x3c], edi
xor edi, edi
mov dword [esp + 0xe0], edi
xor edi, edi
mov dword [esp + 0xe4], edi
xor edi, edi
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0xf8]
mov edx, edi
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0xe0]
mov esi, dword [esp + 0xe4]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x58], edi
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xf4], eax
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2f], dl
mov dword [esp + 0xe4], esi
mov dword [esp + 0xe0], ebp
mov eax, dword [esp + 0x17c]
cmp dword [eax + 0x10], 9
jne 0x4d23bb
mov dword [esp], eax
mov dword [esp + 4], 9
call fcn.004d0450
mov eax, dword [esp + 0x17c]
mov ecx, dword [esp + 0xf8]
movzx edx, byte [esp + 0x2f]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0xe0]
mov esi, dword [esp + 0xe4]
mov edi, dword [esp + 0x58]
cmp dword [eax + 0x10], 3
jne 0x4d3287
mov dword [esp], eax
mov dword [esp + 4], 9
call fcn.004d0450
movzx eax, byte [esp + 0x2f]
test al, al
je 0x4d2651
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
call fcn.004d0830
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
je 0x4d25da
cmp dword [eax + 8], 0x778cdb8
jne 0x4d24ad
lea eax, [0x696a40]
cmp ecx, eax
jne 0x4d24b3
mov eax, dword [edx + 4]
mov ecx, dword [edx]
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044f3f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x17c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x18], edx
mov byte [esp + 0x1c], 1
call fcn.004d39f0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test eax, eax
jne 0x4d3158
mov ebx, dword [esp + 0xa8]
cmp ebx, 0x15
mov edx, dword [esp + 0x17c]
jmp 0x4d26a3
lea eax, [0x696a40]
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x4d24d2
test ecx, 0x200
jne 0x4d24d2
lea edx, [0x752f6c]
mov ebp, dword [esp + 0xe0]
jmp 0x4d2504
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0048b1d0
mov eax, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x3c]
mov edx, eax
lea eax, [0x696a40]
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
test edx, edx
je 0x4d2521
mov edx, dword [edx + 4]
mov dword [esp + 0x15c], edx
mov dword [esp + 0x160], ebp
lea eax, [0x6e40c9]
mov dword [esp], eax
mov dword [esp + 4], 0x53
lea ecx, [esp + 0x15c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004beaf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x17c]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
je 0x4d2585
mov ebx, dword [esp + 0xa8]
cmp ebx, 0x15
jmp 0x4d26a3
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d25c3
mov dword [edx + 0x40], eax
mov ebx, dword [esp + 0xa8]
cmp ebx, 0x15
jmp 0x4d26a3
lea edi, [edx + 0x40]
call fcn.004630d0
mov ebx, dword [esp + 0xa8]
cmp ebx, 0x15
jmp 0x4d26a3
mov eax, dword [0x8e0e70]
mov ecx, dword [0x8e0e74]
mov edx, dword [0x8e0e78]
mov ebx, dword [esp + 0x17c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x18], edx
mov byte [esp + 0x1c], 0
call fcn.004d39f0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test eax, eax
jne 0x4d316d
mov ebx, dword [esp + 0xa8]
cmp ebx, 0x15
mov edx, dword [esp + 0x17c]
jmp 0x4d26a3
mov eax, dword [esp + 0x17c]
mov dword [esp], eax
mov ecx, dword [esp + 0xe0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0xc], ebx
call fcn.004d0660
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x4d3197
mov ebx, dword [esp + 0xa8]
cmp ebx, 0x15
mov edx, dword [esp + 0x17c]
jne 0x4d302a
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x4c]
mov edx, dword [esp + 0xd4]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 8]
lea ebp, [0x752f6c]
cmp eax, ebp
jne 0x4d326b
mov dword [esp + 0x5c], edx
mov dword [esp + 0x124], eax
mov dword [esp + 0xfc], ecx
mov dword [esp], ebx
call fcn.00485640
mov eax, dword [0x8e6780]
mov ecx, dword [0x8e6784]
mov edx, dword [esp + 4]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00485900
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4d2f05
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x50]
mov edx, dword [esp + 0xfc]
mov dword [esp], edx
call ecx
cmp dword [esp + 4], 0x18
jne 0x4d2815
mov eax, dword [esp + 0x100]
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 8], eax
call fcn.00409260
mov eax, dword [esp + 0xc]
nop
movzx ecx, byte [0x8e6f00]
test cl, cl
je 0x4d2799
lea ecx, [0x68e840]
mov dword [0x8e6f04], ecx
mov edx, dword [0x90e260]
test edx, edx
jne 0x4d278c
mov dword [0x8e6f08], eax
jmp 0x4d279f
lea edi, [0x8e6f08]
call fcn.004630d0
jmp 0x4d279f
lea ecx, [0x68e840]
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], eax
mov edx, dword [esp + 0x14c]
test edx, edx
je 0x4d27d1
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4d27d7
or ebx, 0x80
jmp 0x4d27d7
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x124]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.0048bfb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x17c]
jmp 0x4d2fc7
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + 0x50]
mov ecx, dword [esp + 0xfc]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
lea ecx, [eax - 2]
cmp ecx, 4
jbe 0x4d2b8f
add eax, 0xfffffff9
cmp eax, 5
ja 0x4d3253
mov dword [esp], 0
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0044f290
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe8], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x40], ecx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.00471890
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4d28ac
mov edx, 1
jmp 0x4d29b6
mov dword [esp + 0x48], ecx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x124]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
call fcn.0048bb50
mov eax, dword [esp + 0x10]
and eax, 0x1f
lea ecx, [eax - 7]
mov edx, dword [esp + 8]
cmp ecx, 5
ja 0x4d320f
mov eax, dword [edx]
shl eax, 3
add eax, 0xffffffc0
neg eax
mov dword [esp + 0x9c], eax
lea ecx, [eax - 0x20]
mov dword [esp + 0x98], ecx
mov edx, ecx
neg ecx
mov dword [esp + 0x94], ecx
cmp ecx, 0x20
sbb ebx, ebx
mov dword [esp + 0x90], ebx
cmp eax, 0x20
sbb ebp, ebp
cmp edx, 0x20
sbb esi, esi
mov dword [esp + 0x8c], esi
mov edi, ecx
mov ecx, edx
mov ebx, dword [esp + 0x48]
shl ebx, cl
and ebx, esi
mov ecx, edi
mov esi, dword [esp + 0x48]
shr esi, cl
mov ecx, eax
mov edi, dword [esp + 0x54]
shl edi, cl
and edi, ebp
mov edx, dword [esp + 0x90]
and esi, edx
or esi, edi
or ebx, esi
mov dword [esp + 0x90], ebx
mov esi, dword [esp + 0x48]
mov edi, esi
shl esi, cl
and esi, ebp
shr esi, cl
mov ecx, dword [esp + 0x98]
shr ebx, cl
mov eax, dword [esp + 0x8c]
and ebx, eax
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x90]
shl eax, cl
and eax, edx
and esi, ebp
or esi, eax
or esi, ebx
cmp edi, esi
setne al
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x90]
shr edx, cl
and edx, ebp
mov ebx, dword [esp + 0x54]
cmp ebx, edx
setne dl
or edx, eax
mov eax, ebx
mov ecx, edi
test dl, dl
je 0x4d2acc
lea eax, [0x6b5980]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0x120], eax
mov dword [esp], 0
lea ecx, [0x6cefd1]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov edx, dword [esp + 0xe8]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], edx
call fcn.0044efe0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x120]
mov dword [edi + 4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d2a28
mov dword [edi], eax
jmp 0x4d2a2d
call fcn.004630d0
mov ebx, dword [esp + 0x124]
mov dword [edi + 8], ebx
mov ebx, dword [0x90e260]
test ebx, ebx
jne 0x4d2a4d
mov ebx, dword [esp + 0xfc]
mov dword [edi + 0xc], ebx
jmp 0x4d2a62
lea ebx, [edi + 0xc]
mov eax, dword [esp + 0xfc]
mov ecx, edi
mov edi, ebx
call fcn.004630d0
mov edi, ecx
mov ebx, dword [esp + 0xa4]
mov dword [edi + 0x10], ebx
sar ebx, 0x1f
mov dword [edi + 0x14], ebx
mov ebx, dword [esp + 0x17c]
mov ebp, dword [ebx + 0x3c]
test ebp, ebp
jne 0x4d2ac1
mov dword [esp], ebx
lea eax, [0x75108c]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d2ab7
mov dword [edx + 0x40], eax
jmp 0x4d2abf
lea edi, [edx + 0x40]
call fcn.004630d0
mov ebx, edx
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x4d2fc7
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00409130
mov eax, dword [esp + 8]
nop
movzx ecx, byte [0x8e6f00]
test cl, cl
je 0x4d2b13
lea ecx, [0x696c00]
mov dword [0x8e6f04], ecx
mov edx, dword [0x90e260]
test edx, edx
jne 0x4d2b06
mov dword [0x8e6f08], eax
jmp 0x4d2b19
lea edi, [0x8e6f08]
call fcn.004630d0
jmp 0x4d2b19
lea ecx, [0x696c00]
mov dword [esp + 0x13c], ecx
mov dword [esp + 0x140], eax
mov edx, dword [esp + 0x13c]
test edx, edx
je 0x4d2b4b
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4d2b51
or ebx, 0x80
jmp 0x4d2b51
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x124]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.0048bfb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x17c]
jmp 0x4d2fc7
mov dword [esp], 0
mov eax, dword [esp + 0x100]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.0044f290
mov eax, dword [esp + 0xc]
mov dword [esp + 0xec], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x44], ecx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.00472070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4d2bf7
mov edx, 1
jmp 0x4d2d2c
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0x124]
mov dword [esp], eax
mov ecx, dword [esp + 0xfc]
mov dword [esp + 4], ecx
call fcn.0048bb50
mov eax, dword [esp + 0x10]
and eax, 0x1f
lea ecx, [eax - 2]
mov edx, dword [esp + 8]
cmp ecx, 4
ja 0x4d31cb
mov eax, dword [edx]
shl eax, 3
add eax, 0xffffffc0
neg eax
mov dword [esp + 0x9c], eax
lea ecx, [eax - 0x20]
mov dword [esp + 0x98], ecx
cmp ecx, 0x20
sbb edx, edx
cmp eax, 0x20
sbb ebx, ebx
mov ebp, ecx
neg ecx
mov dword [esp + 0x94], ecx
cmp ecx, 0x20
sbb esi, esi
mov dword [esp + 0x90], esi
mov edi, eax
shr eax, 5
cmp eax, 1
sbb eax, eax
mov dword [esp + 0x8c], eax
cmp edi, 0x20
sbb eax, eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x4c]
shr eax, cl
and eax, esi
mov ecx, ebp
mov esi, dword [esp + 0x4c]
shl esi, cl
and esi, edx
mov ecx, edi
mov ebp, dword [esp + 0x50]
shl ebp, cl
and ebp, ebx
or ebp, eax
or esi, ebp
mov dword [esp + 0x84], esi
mov eax, dword [esp + 0x4c]
mov ebp, eax
shl eax, cl
and eax, ebx
mov ecx, dword [esp + 0x94]
shl esi, cl
mov ecx, ebp
mov ebp, dword [esp + 0x90]
and esi, ebp
mov ebp, ecx
mov ecx, edi
shr eax, cl
not edx
mov edi, dword [esp + 0x98]
or edx, edi
mov ecx, edx
mov edi, dword [esp + 0x84]
mov edx, edi
sar edi, cl
mov ecx, edx
mov edx, dword [esp + 0x8c]
xor edx, 0xffffffff
and edx, edi
and eax, ebx
or eax, esi
or edx, eax
cmp ebp, edx
setne al
mov edx, dword [esp + 0x88]
not edx
mov ebx, dword [esp + 0x9c]
or ebx, edx
mov edx, ecx
mov ecx, ebx
sar edx, cl
mov ebx, dword [esp + 0x50]
cmp ebx, edx
setne dl
or edx, eax
mov eax, ebx
mov ecx, ebp
test dl, dl
je 0x4d2e42
lea eax, [0x6b5980]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0x120], eax
mov dword [esp], 0
lea ecx, [0x6cefd1]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov edx, dword [esp + 0xec]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x10], edx
call fcn.0044efe0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x120]
mov dword [edi + 4], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d2d9e
mov dword [edi], eax
jmp 0x4d2da3
call fcn.004630d0
mov ebx, dword [esp + 0x124]
mov dword [edi + 8], ebx
mov ebx, dword [0x90e260]
test ebx, ebx
jne 0x4d2dc3
mov ebx, dword [esp + 0xfc]
mov dword [edi + 0xc], ebx
jmp 0x4d2dd8
lea ebx, [edi + 0xc]
mov eax, dword [esp + 0xfc]
mov ecx, edi
mov edi, ebx
call fcn.004630d0
mov edi, ecx
mov ebx, dword [esp + 0xa4]
mov dword [edi + 0x10], ebx
sar ebx, 0x1f
mov dword [edi + 0x14], ebx
mov ebx, dword [esp + 0x17c]
mov ebp, dword [ebx + 0x3c]
test ebp, ebp
jne 0x4d2e37
mov dword [esp], ebx
lea eax, [0x75108c]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d2e2d
mov dword [edx + 0x40], eax
jmp 0x4d2e35
lea edi, [edx + 0x40]
call fcn.004630d0
mov ebx, edx
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x4d2fc7
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00409130
mov eax, dword [esp + 8]
nop
movzx ecx, byte [0x8e6f00]
test cl, cl
je 0x4d2e89
lea ecx, [0x696240]
mov dword [0x8e6f04], ecx
mov edx, dword [0x90e260]
test edx, edx
jne 0x4d2e7c
mov dword [0x8e6f08], eax
jmp 0x4d2e8f
lea edi, [0x8e6f08]
call fcn.004630d0
jmp 0x4d2e8f
lea ecx, [0x696240]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov edx, dword [esp + 0x144]
test edx, edx
je 0x4d2ec1
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4d2ec7
or ebx, 0x80
jmp 0x4d2ec7
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x124]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.0048bfb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x17c]
jmp 0x4d2fc7
mov eax, dword [esp + 0x124]
mov dword [esp], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.0048bc30
mov eax, dword [esp + 8]
mov dword [esp + 0x11c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x118], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x80], edx
mov ebx, dword [esp + 0x17c]
mov dword [esp], ebx
mov ebp, dword [esp + 0x104]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x68]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x6c]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
mov byte [esp + 0x1c], 1
call fcn.004d39f0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test eax, eax
jne 0x4d3182
mov eax, dword [esp + 0x11c]
mov dword [esp], eax
mov eax, dword [esp + 0x118]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 8], eax
call fcn.00488e40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x17c]
test edx, edx
je 0x4d3021
mov ebx, dword [esp + 0x134]
mov dword [esp], ebx
mov ebp, dword [esp + 0x138]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xac]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xe0]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x20], eax
call fcn.0048a850
mov ebx, dword [esp + 0x17c]
mov edx, ebx
mov ebx, dword [esp + 0xa8]
cmp dword [edx + 0x10], 9
jne 0x4d304e
mov dword [esp], edx
mov dword [esp + 4], 9
call fcn.004d0450
mov edx, dword [esp + 0x17c]
mov ebx, dword [esp + 0xa8]
mov ebp, dword [edx + 0x38]
test ebp, ebp
je 0x4d3094
mov esi, dword [ebp + 0x10]
mov ecx, dword [esp + 0x170]
cmp ecx, esi
ja 0x4d31c4
mov dword [ebp + 0xc], ecx
mov ecx, dword [edx + 0x38]
mov eax, dword [esp + 0x168]
mov ebp, dword [esp + 0x164]
mov dword [ecx], ebp
mov ebp, dword [0x90e260]
test ebp, ebp
jne 0x4d308c
mov dword [ecx + 4], eax
jmp 0x4d3094
lea edi, [ecx + 4]
call fcn.004630d0
mov eax, dword [edx + 0x10]
cmp eax, 5
je 0x4d30aa
cmp eax, 4
je 0x4d1f56
jmp 0x4d31ac
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
add esp, 0x178
ret
mov eax, dword [esp + 0x74]
lea edx, [eax + 1]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x78]
cmp edx, ecx
jge 0x4d2193
jae 0x4d37a6
mov dword [esp + 0x74], edx
lea ecx, [edx + edx*8]
lea edi, [eax + ecx*8]
mov dword [esp + 0x110], edi
lea ebx, [eax + ecx*8 + 0x14]
mov ebx, dword [ebx]
mov dword [esp + 0x12c], ebx
mov ebx, dword [ebx]
lea ecx, [eax + ecx*8 + 8]
mov ecx, dword [ecx]
mov eax, dword [edi + 0xc]
mov edi, dword [edi + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 0x64]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x12c]
call ebx
movzx eax, byte [esp + 0x18]
test al, al
je 0x4d30c7
jmp 0x4d2170
mov dword [esp + 0x18c], ecx
mov dword [esp + 0x190], edx
add esp, 0x178
ret
mov dword [esp + 0x18c], ecx
mov dword [esp + 0x190], edx
add esp, 0x178
ret
mov dword [esp + 0x18c], ecx
mov dword [esp + 0x190], edx
add esp, 0x178
ret
mov dword [esp + 0x18c], ecx
mov dword [esp + 0x190], edx
add esp, 0x178
ret
lea eax, [0x696a40]
mov dword [esp], eax
lea eax, [0x7508c4]
mov dword [esp + 4], eax
call fcn.00436fc0
mov edx, esi
call fcn.00463190
mov dword [esp + 0xac], eax
lea eax, [0x6a7c00]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x19
lea ecx, [0x6d6ea2]
mov dword [eax], ecx
mov ecx, dword [esp + 0xac]
mov dword [eax + 8], ecx
lea ecx, [0x69cfa0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00436fc0
mov dword [esp + 0xac], eax
lea eax, [0x6a7c00]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1a
lea ecx, [0x6d787c]
mov dword [eax], ecx
mov ecx, dword [esp + 0xac]
mov dword [eax + 8], ecx
lea ecx, [0x69cfa0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00436fc0
lea eax, [0x696a40]
mov dword [esp], eax
lea eax, [0x7508e4]
mov dword [esp + 4], eax
call fcn.00436fc0
mov dword [esp], eax
lea eax, [0x6ca4c0]
mov dword [esp + 4], eax
lea eax, [0x6c3de0]
mov dword [esp + 8], eax
call fcn.00408ed0
lea eax, [0x696a40]
mov dword [esp], eax
lea eax, [0x7508c4]
mov dword [esp + 4], eax
call fcn.00436fc0
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
call fcn.00488ff0
mov eax, dword [esp + 0x7c]
inc eax
mov esi, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x128]
mov edx, dword [esp + 0xa0]
mov edi, dword [esp + 0x78]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x3c], ebx
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xe0], esi
mov eax, dword [esp + 0x10c]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
mov ebx, dword [esp + 0x7c]
cmp ebx, edx
jge 0x4d35b8
mov eax, dword [ecx + ebx*4]
nop
mov ebp, dword [esp + 0x3c]
and ebp, 0x1f
cmp ebp, 0x16
jne 0x4d34ad
mov dword [esp + 0x70], eax
mov ebp, dword [esp + 0x3c]
test ebp, 0x200
jne 0x4d346a
test ebp, 0x80
je 0x4d3369
mov esi, dword [esp + 0xe4]
mov edi, dword [esi]
mov esi, dword [esp + 0x100]
mov dword [esp + 0xf0], edi
mov edi, dword [esp + 0x78]
jmp 0x4d3385
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0xb0]
mov esi, dword [esp + 0xf0]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
je 0x4d346a
mov esi, ebp
and ebp, 0x160
cmp ebp, 0x100
jne 0x4d34b6
test esi, 0x200
jne 0x4d33da
lea ebp, [0x752f6c]
mov ebp, dword [esp + 0xe0]
mov dword [esp + 0xd0], ebp
lea ebp, [0x752f6c]
jmp 0x4d3409
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.0048b1d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebp, eax
mov dword [esp + 0xd0], ecx
mov eax, dword [ebp + 0x28]
mov ecx, dword [esp + 0xd0]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0048bc30
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xe0]
mov dword [esp], ebx
mov ebp, dword [esp + 0xe4]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.0048a1b0
mov ebp, dword [esp + 0x3c]
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.00488e40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebp, edx
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], ecx
mov eax, dword [esp + 0x70]
jmp 0x4d329f
mov ebp, dword [esp + 0x3c]
jmp 0x4d329f
test esi, 0x200
jne 0x4d34cd
lea eax, [0x752f6c]
mov ecx, dword [esp + 0xe0]
jmp 0x4d34f3
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.0048b1d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
test eax, eax
je 0x4d3520
mov eax, dword [eax + 4]
mov dword [esp + 0x15c], eax
mov dword [esp + 0x160], ecx
lea eax, [0x6e245d]
mov dword [esp], eax
mov dword [esp + 4], 0x3a
lea ecx, [esp + 0x15c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004beaf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x17c]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x4d35ae
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004d0210
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x90e260]
test ecx, ecx
jne 0x4d35a6
mov dword [edx + 0x40], eax
jmp 0x4d35ae
lea edi, [edx + 0x40]
call fcn.004630d0
xor eax, eax
xor ecx, ecx
xor ebx, ebx
xor ebp, ebp
jmp 0x4d35d6
mov edx, dword [esp + 0x17c]
movzx eax, byte [esp + 0x2f]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xe0], ebx
mov byte [esp + 0x2f], al
mov esi, dword [edx + 0x38]
test esi, esi
jne 0x4d3647
lea eax, [0x6a6dc0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [0x90e260]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x4d361b
mov edx, dword [esp + 0x17c]
mov dword [edx + 0x38], ecx
jmp 0x4d3630
mov edi, dword [esp + 0x130]
mov eax, ecx
call fcn.004630d0
mov edx, dword [esp + 0x17c]
movzx eax, byte [esp + 0x2f]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov esi, dword [edx + 0x38]
mov dword [esp + 0x114], esi
mov edi, ecx
mov ecx, dword [esi + 0xc]
mov dword [esp + 0xa0], ecx
mov ebx, dword [esi + 0x10]
lea ebp, [ecx + 1]
mov edx, dword [esi + 8]
mov esi, dword [esp + 0x110]
mov ecx, dword [esi]
mov dword [esp + 0x124], ecx
mov esi, dword [esi + 4]
cmp ebx, ebp
jb 0x4d3686
mov ebx, dword [esp + 0xa0]
jmp 0x4d36f4
mov dword [esp + 0x7c], esi
lea eax, [0x696a40]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call fcn.0044b8c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x114]
mov dword [ebx + 0x10], edx
mov edx, dword [0x90e260]
test edx, edx
jne 0x4d36d4
mov dword [ebx + 8], eax
jmp 0x4d36dc
lea edi, [ebx + 8]
call fcn.004630d0
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
mov edx, eax
movzx eax, byte [esp + 0x2f]
mov ecx, dword [esp + 0x124]
lea ebp, [ebx + 1]
mov ecx, dword [esp + 0x114]
mov dword [ecx + 0xc], ebp
lea ecx, [edx + ebx*8 + 4]
mov dword [ecx], esi
mov ecx, dword [0x90e260]
lea edx, [edx + ebx*8]
test ecx, ecx
jne 0x4d371f
mov ecx, dword [esp + 0x124]
mov dword [edx], ecx
jmp 0x4d3735
mov ecx, edi
mov edi, edx
mov ebx, eax
mov eax, dword [esp + 0x124]
call fcn.004630d0
mov eax, ebx
mov edi, ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [ecx + 0x38]
mov ebx, dword [esp + 0x30]
mov dword [edx], ebx
mov ebp, dword [0x90e260]
test ebp, ebp
jne 0x4d375b
mov ebp, dword [esp + 0xd4]
mov dword [edx + 4], ebp
jmp 0x4d377b
add edx, 4
mov edi, edx
mov esi, eax
mov eax, dword [esp + 0xd4]
call fcn.004630d0
mov eax, esi
mov ebp, dword [esp + 0xd4]
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x17c]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x100]
movzx edi, byte [esp + 0x2f]
jmp 0x4d2327
mov eax, edx
call fcn.00463150
call fcn.00463150
lea eax, [0x696a40]
mov dword [esp], eax
lea eax, [0x7508c4]
mov dword [esp + 4], eax
call fcn.00436fc0
mov eax, edi
mov ecx, ebp
call fcn.004631b0
mov ecx, ebp
call fcn.00463190
lea eax, [0x696a40]
mov dword [esp], eax
lea eax, [0x7508c4]
mov dword [esp + 4], eax
call fcn.00436fc0
mov dword [esp], eax
lea eax, [0x6ca4c0]
mov dword [esp + 4], eax
lea eax, [0x6c3de0]
mov dword [esp + 8], eax
call fcn.00408ed0
nop
call fcn.00461cc0
jmp fcn.004d1810