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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x158]
cmp eax, dword [ecx + 8]
jbe 0x5a7f0d
sub esp, 0x1d8
lea edi, [esp + 0x1ac]
xor eax, eax
call fcn.0045f235
lea ecx, [0x67f980]
mov dword [esp], ecx
call fcn.0040b430
mov ecx, dword [esp + 4]
mov dword [esp + 0x110], ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov edx, dword [esp + 0x1e0]
mov dword [esp], edx
call fcn.00408ce0
mov ecx, dword [esp + 4]
lea edx, [0x65ab80]
mov dword [esp + 0x118], edx
mov dword [esp + 0x11c], ecx
lea ecx, [0x6a7724]
mov dword [esp], ecx
mov dword [esp + 4], 0x37
lea ecx, [esp + 0x118]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004bf200
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xec], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x70], edx
lea edi, [esp + 0xc4]
mov esi, dword [esp + 0x110]
call fcn.0045f70a
lea ecx, [0x67f980]
mov dword [esp], ecx
lea ebx, [esp + 0xc4]
mov dword [esp + 4], ebx
call fcn.00408c00
mov ecx, dword [esp + 8]
lea edx, [0x67f980]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004b53b0
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x5a7f07
mov dword [esp + 0x90], ecx
mov eax, dword [esp + 0x1e4]
mov ebx, eax
xor edx, edx
div ecx
mov dword [esp + 0x74], eax
xor edx, edx
jmp 0x5a639e
mov ebp, dword [esp + 0x68]
inc ebp
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esp + 0x1e4]
mov edx, ebp
cmp edx, eax
jae 0x5a74c0
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x1dc]
mov dword [esp], eax
imul ecx, edx
mov ebp, dword [esp + 0x1e0]
add ecx, ebp
mov dword [esp + 4], ecx
call fcn.005b7ea0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1dc]
mov dword [esp], ecx
lea edx, [0x6495a0]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x110]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x10], eax
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5a746b
mov esi, dword [esp + 0x110]
mov ebx, dword [esi + 0xc]
cmp ebx, 0xc
ja 0x5a6b4b
cmp ebx, 2
jne 0x5a6a29
mov eax, dword [esi + 0x18]
mov edx, dword [esp + 0x1dc]
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x5a6449
mov ecx, dword [0x8ad878]
xor ebx, ebx
jmp 0x5a6480
mov ecx, dword [edx + 0x28c]
mov ebx, dword [edx + 0x288]
mov ebp, dword [edx + 0x290]
cmp ecx, eax
jb 0x5a7f02
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp ecx, 3
jbe 0x5a7ef8
mov ebx, dword [eax + ebx]
xor ecx, ecx
test ecx, ecx
jne 0x5a6385
cmp ebx, 0x53445352
je 0x5a676d
cmp ebx, 0x3031424e
jne 0x5a6e06
lea eax, [0x669c20]
mov dword [esp], eax
call fcn.0040b430
mov eax, dword [esp + 4]
mov dword [esp + 0x114], eax
mov ecx, dword [esp + 0x110]
mov edx, dword [ecx + 0x18]
mov dword [esp + 0x5c], edx
mov ebx, dword [esp + 0x1dc]
mov dword [esp], ebx
lea ebp, [0x648ae0]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov esi, dword [esp + 0x1e4]
mov dword [esp + 0x10], esi
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5a650e
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6385
lea edi, [esp + 0x140]
xor eax, eax
call fcn.0045f23a
mov ecx, dword [esp + 0x114]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x140], edx
mov dword [esp + 0x144], ecx
mov ecx, dword [esp + 0x5c]
lea edx, [ecx + 8]
mov ebx, dword [esp + 0x1dc]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp ebp, edx
jae 0x5a655d
mov edx, dword [0x8ad878]
mov edi, ebx
xor ebx, ebx
jmp 0x5a659a
mov ebp, dword [ebx + 0x28c]
mov esi, edx
mov edx, dword [ebx + 0x288]
mov edi, ebx
mov ebx, dword [ebx + 0x290]
cmp ebp, esi
jb 0x5a7eef
sub ebx, ecx
sub ebp, ecx
add ebx, 0xfffffff8
neg ebx
sar ebx, 0x1f
and esi, ebx
lea ebx, [ebp - 8]
cmp ebx, 3
jbe 0x5a7ee3
mov ebx, dword [esi + edx]
xor edx, edx
mov dword [esp + 0x148], ebx
test edx, edx
je 0x5a65b3
mov edx, edi
mov esi, dword [esp + 0x110]
jmp 0x5a6385
lea edx, [ecx + 0xc]
mov ebx, dword [edi + 0x2ac]
add ebx, 0xfffffffc
cmp ebx, edx
jae 0x5a65cd
mov edx, dword [0x8ad878]
xor ebx, ebx
jmp 0x5a660c
mov ebx, dword [edi + 0x28c]
mov ebp, dword [edi + 0x288]
mov esi, ebp
mov ebp, dword [edi + 0x290]
cmp ebx, edx
jb 0x5a7eda
sub ebx, ecx
sub ebp, ecx
add ebp, 0xfffffff4
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add ebx, 0xfffffff4
cmp ebx, 3
jbe 0x5a7ece
mov ebx, dword [edx + esi]
xor edx, edx
mov dword [esp + 0x14c], ebx
test edx, edx
je 0x5a6625
mov edx, edi
mov esi, dword [esp + 0x110]
jmp 0x5a6385
mov edx, dword [esp + 0x110]
mov ebx, dword [edx + 0x10]
add ebx, 0xffffffef
test ebx, ebx
jbe 0x5a6716
mov dword [esp + 0x44], ebx
lea eax, [0x651f40]
mov dword [esp], eax
call fcn.0040b430
mov eax, dword [esp + 4]
mov dword [esp + 0x104], eax
lea ecx, [0x65ac00]
mov dword [esp], ecx
mov edx, dword [esp + 0x44]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004480c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x44]
mov edi, dword [esp + 0x104]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0x8d5630]
test edx, edx
jne 0x5a6694
mov dword [edi], eax
jmp 0x5a6699
call fcn.0045efb0
mov eax, dword [esp + 0x1dc]
mov dword [esp], eax
lea edx, [0x646fa0]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x5c]
add ebx, 0x10
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5a66e0
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6385
mov eax, dword [esp + 0x104]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044b9e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ecx
lea edi, [esp + 0x158]
lea esi, [esp + 0x140]
call fcn.0045f714
lea eax, [0x676160]
mov dword [esp], eax
lea ecx, [esp + 0x158]
mov dword [esp + 4], ecx
call fcn.00408ba0
mov eax, dword [esp + 8]
lea ecx, [0x676160]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6e06
lea eax, [0x6761e0]
mov dword [esp], eax
call fcn.0040b430
mov edi, dword [esp + 4]
mov dword [esp + 0x10c], edi
lea esi, str.RSDS
call fcn.0045f700
mov eax, dword [esp + 0x110]
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x8c], ecx
lea edx, [0x67a860]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
lea ebp, [ebx + 4]
mov dword [esp + 0xfc], ebp
mov dword [esp + 4], ebp
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x67a860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b53b0
mov eax, dword [esp + 8]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x1dc]
mov dword [esp], ecx
lea edx, [0x660c60]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xfc]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x8c]
lea ebp, [ebx + 4]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5a6837
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6385
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x88]
lea eax, [ebx + edx + 4]
lea ebp, [ebx + edx]
mov ecx, edx
mov edx, dword [esp + 0x1dc]
mov esi, ebx
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x5a686e
mov eax, dword [0x8ad878]
xor ebx, ebx
jmp 0x5a68b2
mov ebx, dword [edx + 0x28c]
mov edi, ebp
mov ebp, dword [edx + 0x288]
mov edx, dword [edx + 0x290]
cmp ebx, eax
jb 0x5a7ec7
sub edx, edi
sub ebx, edi
add edx, 0xfffffffc
neg edx
sar edx, 0x1f
and edx, eax
add ebx, 0xfffffffc
cmp ebx, 3
jbe 0x5a7ebb
mov edx, dword [edx + ebp]
xor eax, eax
mov ebx, edx
mov edx, dword [esp + 0x1dc]
mov ebp, dword [esp + 0x10c]
mov dword [ebp + 0x14], ebx
test eax, eax
je 0x5a68cc
mov esi, dword [esp + 0x110]
jmp 0x5a6385
lea eax, [esi + ecx + 8]
mov ecx, dword [esp + 0x110]
mov ebx, dword [ecx + 0x10]
add ebx, 0xffffffe7
test ebx, ebx
jbe 0x5a69d7
mov dword [esp + 0x60], eax
mov dword [esp + 0x48], ebx
lea eax, [0x651f40]
mov dword [esp], eax
call fcn.0040b430
mov eax, dword [esp + 4]
mov dword [esp + 0x108], eax
lea ecx, [0x65ac00]
mov dword [esp], ecx
mov edx, dword [esp + 0x48]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004480c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x48]
mov edi, dword [esp + 0x108]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0x8d5630]
test edx, edx
jne 0x5a6943
mov dword [edi], eax
jmp 0x5a6948
call fcn.0045efb0
mov eax, dword [esp + 0x1dc]
mov dword [esp], eax
lea edx, [0x646fa0]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x60]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5a698c
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6385
mov eax, dword [esp + 0x108]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044b9e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x10c]
mov dword [esi + 0x1c], ecx
mov ecx, dword [0x8d5630]
test ecx, ecx
jne 0x5a69cd
mov dword [esi + 0x18], eax
jmp 0x5a69d5
lea edi, [esi + 0x18]
call fcn.0045efb0
mov ebp, esi
lea edi, [esp + 0x18c]
mov esi, ebp
call fcn.0045f700
lea eax, [0x6761e0]
mov dword [esp], eax
lea ecx, [esp + 0x18c]
mov dword [esp + 4], ecx
call fcn.00408ba0
mov eax, dword [esp + 8]
lea ecx, [0x6761e0]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6e06
cmp ebx, 3
jne 0x5a6a49
mov ecx, dword [esi + 0x18]
mov ebx, dword [esp + 0x1dc]
xor eax, eax
xor edx, edx
xor ebp, ebp
lea edi, [0x8d5410]
jmp 0x5a78d5
cmp ebx, 0xc
jne 0x5a6e06
lea eax, [0x679be0]
mov dword [esp], eax
call fcn.0040b430
mov esi, dword [esp + 4]
mov dword [esp + 0x100], esi
lea edi, [esp + 0xb0]
call fcn.0045f71e
lea eax, [0x679be0]
mov dword [esp], eax
lea ecx, [esp + 0xb0]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x679be0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004b53b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x110]
mov edx, dword [ecx + 0x18]
mov ebx, dword [esp + 0x1dc]
mov dword [esp], ebx
lea ebp, [0x64a8e0]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x100]
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.005b8bc0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5a6afb
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6385
lea edi, [esp + 0xb0]
mov esi, dword [esp + 0x100]
call fcn.0045f71e
lea eax, [0x679be0]
mov dword [esp], eax
lea ecx, [esp + 0xb0]
mov dword [esp + 4], ecx
call fcn.00408c00
mov eax, dword [esp + 8]
lea ecx, [0x679be0]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov esi, dword [esp + 0x110]
jmp 0x5a6e06
cmp ebx, 0xd
jne 0x5a6c06
mov eax, dword [esi + 0x18]
mov ebx, dword [esp + 0x1dc]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp eax, ebp
jbe 0x5a6b77
mov ebp, dword [0x8ad878]
mov edx, ebx
xor ebx, ebx
jmp 0x5a6bac
mov ecx, dword [ebx + 0x28c]
mov ebp, dword [ebx + 0x288]
mov edx, ebx
mov ebx, dword [ebx + 0x290]
cmp ecx, eax
jb 0x5a7889
sub ecx, eax
sub ebx, eax
neg ebx
sar ebx, 0x1f
and ebx, eax
cmp ecx, 3
jbe 0x5a787f
mov ebx, dword [ebx + ebp]
xor ebp, ebp
test ebp, ebp
jne 0x5a6385
cmp ebx, 0x4c544347
ja 0x5a6bcd
test ebx, ebx
je 0x5a6be9
cmp ebx, 0x4c544347
je 0x5a6be9
jmp 0x5a6e06
cmp ebx, 0x50474900
je 0x5a6be9
cmp ebx, 0x50474f00
je 0x5a6be9
cmp ebx, 0x50475500
jne 0x5a6e06
mov dword [esp + 0x28], ebx
lea ebp, [eax + 4]
xor eax, eax
xor ecx, ecx
xor edi, edi
xor eax, eax
mov dword [esp + 0xe4], eax
xor eax, eax
jmp 0x5a753e
cmp ebx, 0x10
jne 0x5a6d76
mov eax, dword [esi + 0x18]
mov ebx, dword [esp + 0x1dc]
mov ebp, dword [ebx + 0x2ac]
lea edi, [ebp - 4]
cmp eax, edi
jbe 0x5a6c32
mov edi, dword [0x8ad878]
mov edx, esi
xor esi, esi
jmp 0x5a6c6b
mov ecx, dword [ebx + 0x28c]
mov edi, dword [ebx + 0x288]
mov edx, esi
mov esi, dword [ebx + 0x290]
cmp ecx, eax
jb 0x5a751c
sub ecx, eax
sub esi, eax
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, eax
cmp ecx, 3
jbe 0x5a7512
mov esi, dword [esi + edi]
xor edi, edi
test edi, edi
je 0x5a6c7d
mov edx, ebx
mov esi, dword [esp + 0x110]
jmp 0x5a6385
mov dword [esp + 0x24], esi
lea edi, [eax + 4]
lea ecx, [esi + eax + 4]
cmp ecx, edi
seta bl
test esi, esi
xchg esi, ebx
seta bl
xchg esi, ebx
xchg esi, eax
cmp al, bl
xchg esi, eax
je 0x5a6cb1
mov eax, dword [0x8ad878]
mov ebx, dword [esp + 0x1dc]
xor ebp, ebp
xor esi, esi
xor ecx, ecx
jmp 0x5a6d07
cmp ebp, edi
jbe 0x5a6cb9
cmp ebp, ecx
jae 0x5a6cce
mov eax, dword [0x8ad878]
mov ebx, dword [esp + 0x1dc]
xor ebp, ebp
xor esi, esi
xor ecx, ecx
jmp 0x5a6d07
mov ebx, dword [esp + 0x1dc]
mov ebp, dword [ebx + 0x290]
mov esi, dword [ebx + 0x288]
cmp ebp, ecx
jb 0x5a750b
cmp ecx, edi
jb 0x5a7504
sub ebp, eax
lea ecx, [ebp - 4]
mov ebp, ecx
neg ecx
sar ecx, 0x1f
and ecx, edi
add ecx, esi
xor eax, eax
mov esi, dword [esp + 0x24]
test eax, eax
je 0x5a6d19
mov edx, ebx
mov esi, dword [esp + 0x110]
jmp 0x5a6385
mov eax, dword [esp + 0x24]
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], ecx
mov dword [esp + 0x128], esi
mov dword [esp + 0x12c], ebp
lea eax, [0x66a4c0]
mov dword [esp], eax
lea ecx, [esp + 0x120]
mov dword [esp + 4], ecx
call fcn.00408ba0
mov eax, dword [esp + 8]
lea ecx, [0x66a4c0]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov esi, dword [esp + 0x110]
jmp 0x5a6e06
cmp ebx, 0x14
jne 0x5a6e06
mov eax, dword [esi + 0x18]
mov edx, dword [esp + 0x1dc]
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x5a6da0
mov eax, dword [0x8ad878]
xor ecx, ecx
jmp 0x5a6dd7
mov ecx, dword [edx + 0x28c]
mov ebx, dword [edx + 0x288]
mov ebp, dword [edx + 0x290]
cmp ecx, eax
jb 0x5a74ff
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp ecx, 3
jbe 0x5a74f5
mov ecx, dword [eax + ebx]
xor eax, eax
test eax, eax
jne 0x5a6385
mov dword [esp], ecx
call fcn.00408ce0
mov eax, dword [esp + 4]
lea ecx, [0x65ea80]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov esi, dword [esp + 0x110]
lea edi, [esp + 0x1ac]
call fcn.0045f70a
mov ecx, dword [esp + 0x110]
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x2c], edx
lea edi, [esp + 0x170]
xor eax, eax
call fcn.0045f239
lea ecx, [0x65c5e0]
mov dword [esp], ecx
mov dword [esp + 4], 0x11
lea ebx, [esp + 0x170]
mov dword [esp + 8], ebx
call fcn.0040bf80
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xf0], ecx
lea edx, [0x65c5e0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 7
mov ecx, dword [0x8d5630]
test ecx, ecx
jne 0x5a6e93
lea eax, [0x692dd5]
mov dword [edi], eax
jmp 0x5a6e9e
lea eax, [0x692dd5]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 4
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a6ede
lea eax, [0x692272]
mov dword [edi], eax
jmp 0x5a6ee9
lea eax, [0x692272]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 2
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 8
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a6f29
lea eax, [0x693000]
mov dword [edi], eax
jmp 0x5a6f34
lea eax, [0x693000]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 3
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 3
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a6f74
lea eax, [0x69204d]
mov dword [edi], eax
jmp 0x5a6f7f
lea eax, [0x69204d]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 4
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 4
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a6fbf
lea eax, [0x6922c2]
mov dword [edi], eax
jmp 0x5a6fca
lea eax, [0x6922c2]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 5
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 9
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a700a
lea eax, [0x693577]
mov dword [edi], eax
jmp 0x5a7015
lea eax, [0x693577]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 6
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 5
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7055
lea eax, [0x692595]
mov dword [edi], eax
jmp 0x5a7060
lea eax, [0x692595]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0xb
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a70a0
lea eax, [0x6942fa]
mov dword [edi], eax
jmp 0x5a70ab
lea eax, [0x6942fa]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 8
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0xd
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a70eb
lea eax, [0x695738]
mov dword [edi], eax
jmp 0x5a70f6
lea eax, [0x695738]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 9
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 7
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7136
lea eax, [0x692c23]
mov dword [edi], eax
jmp 0x5a7141
lea eax, [0x692c23]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 8
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7181
lea eax, [0x693158]
mov dword [edi], eax
jmp 0x5a718c
lea eax, [0x693158]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xc
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0xa
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a71cc
lea eax, [0x693ce7]
mov dword [edi], eax
jmp 0x5a71d7
lea eax, [0x693ce7]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xd
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 4
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7217
lea eax, [0x6922e6]
mov dword [edi], eax
jmp 0x5a7222
lea eax, [0x6922e6]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xe
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 5
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7262
lea eax, [0x6926b7]
mov dword [edi], eax
jmp 0x5a726d
lea eax, [0x6926b7]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xf
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 3
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a72ad
lea eax, [0x692089]
mov dword [edi], eax
jmp 0x5a72b8
lea eax, [0x692089]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 5
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a72f8
lea eax, [0x6925f4]
mov dword [edi], eax
jmp 0x5a7303
lea eax, [0x6925f4]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x14
call fcn.0040e190
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0x16
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7343
lea eax, [0x69af33]
mov dword [edi], eax
jmp 0x5a734e
lea eax, [0x69af33]
call fcn.0045efb0
lea eax, [0x65c5e0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 8], ecx
call fcn.0040e030
mov eax, dword [esp + 0xc]
movzx ecx, byte [esp + 0x10]
mov edx, dword [eax]
mov eax, dword [eax + 4]
test cl, cl
jne 0x5a738c
mov eax, 1
lea edx, [0x691e81]
mov dword [esp + 0x1d0], edx
mov dword [esp + 0x1d4], eax
mov eax, dword [esp + 0x1dc]
mov ecx, dword [eax + 0xf8]
mov edx, dword [eax + 0xf4]
mov ebx, dword [eax + 0xfc]
lea ebp, [ecx + 1]
cmp ebx, ebp
jae 0x5a7412
lea eax, [0x6723a0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call fcn.00448240
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x1dc]
mov dword [ebx + 0xfc], edx
mov edx, dword [0x8d5630]
test edx, edx
jne 0x5a7403
mov dword [ebx + 0xf4], eax
jmp 0x5a740e
lea edi, [ebx + 0xf4]
call fcn.0045efb0
mov edx, eax
mov eax, ebx
lea ebx, [ecx + 1]
mov dword [eax + 0xf8], ebx
mov ebx, dword [0x8d5630]
imul ecx, ecx, 0x2c
lea edi, [edx + ecx]
test ebx, ebx
jne 0x5a7439
lea esi, [esp + 0x1ac]
call fcn.0045f6e2
jmp 0x5a745d
lea eax, [0x6723a0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x1ac]
mov dword [esp + 8], eax
call fcn.00410760
mov eax, dword [esp + 0x1dc]
mov edx, eax
mov esi, dword [esp + 0x110]
jmp 0x5a6385
lea eax, [0x665440]
mov dword [esp], eax
call fcn.0040b430
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [0x8d5630]
test eax, eax
jne 0x5a7499
mov eax, dword [esp + 0xec]
mov dword [edi], eax
jmp 0x5a74a5
mov eax, dword [esp + 0xec]
call fcn.0045efb0
lea eax, [0x700a44]
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x1ec], edi
add esp, 0x1d8
ret
mov eax, dword [esp + 0x1dc]
mov ecx, dword [eax + 0xf8]
test ecx, ecx
je 0x5a74d8
mov byte [eax + 0x2a1], 1
mov dword [esp + 0x1e8], 0
mov dword [esp + 0x1ec], 0
add esp, 0x1d8
ret
mov eax, 3
call fcn.0045f030
call fcn.0045f0a0
mov eax, edi
call fcn.0045f0a0
mov edx, ebp
call fcn.0045f080
mov eax, 3
call fcn.0045f030
call fcn.0045f0a0
add ebp, 0xc
mov edx, dword [esp + 0x1dc]
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x40]
mov esi, eax
mov eax, ebx
mov ebx, dword [esp + 0x28]
mov esi, dword [esi + 0x10]
add esi, 0xfffffffc
cmp eax, esi
jae 0x5a77b8
mov dword [esp + 0x3c], edi
mov esi, dword [edx + 0x2ac]
add esi, 0xfffffffc
cmp ebp, esi
jbe 0x5a7579
mov edi, dword [0x8ad878]
mov dword [esp + 0x94], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x94]
jmp 0x5a75c6
mov dword [esp + 0x8c], esi
mov edi, dword [edx + 0x28c]
mov ebx, dword [edx + 0x288]
mov esi, dword [edx + 0x290]
cmp ebp, edi
ja 0x5a7876
sub edi, ebp
sub esi, ebp
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebp
cmp edi, 3
jbe 0x5a786a
mov ebx, dword [esi + ebx]
mov esi, dword [esp + 0x8c]
xor edi, edi
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x28]
test edi, edi
jne 0x5a77b4
lea edi, [ebp + 4]
cmp esi, edi
jae 0x5a75df
mov esi, dword [0x8ad878]
xor edi, edi
jmp 0x5a762c
mov esi, dword [edx + 0x28c]
mov ebx, dword [edx + 0x288]
mov dword [esp + 0xf8], ebx
mov ebx, dword [edx + 0x290]
cmp esi, edi
jb 0x5a7861
sub ebx, ebp
sub esi, ebp
add ebx, 0xfffffffc
neg ebx
sar ebx, 0x1f
and edi, ebx
lea ebx, [esi - 4]
cmp ebx, 3
jbe 0x5a7855
mov ebx, dword [esp + 0xf8]
mov ebx, dword [edi + ebx]
xor esi, esi
mov edi, ebx
mov ebx, dword [esp + 0x28]
test esi, esi
jne 0x5a77ae
mov dword [esp + 0x30], edi
mov esi, dword [edx + 0x290]
mov ebx, dword [edx + 0x288]
lea edi, [ebp + 0x48]
cmp esi, edi
jb 0x5a784c
mov dword [esp + 0xf8], ebx
lea ebx, [ebp + 8]
cmp edi, ebx
jb 0x5a7843
mov dword [esp + 0x7c], eax
sub esi, ebp
add esi, 0xfffffff8
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and ebx, esi
mov esi, dword [esp + 0xf8]
add ebx, esi
xor esi, esi
jmp 0x5a7824
mov eax, dword [esp + 0x7c]
cmp esi, edi
ja 0x5a783a
mov dword [esp + 0x40], ecx
mov dword [esp + 0x64], ebp
mov dword [esp], 0
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.0044b9e0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x3c]
lea ebx, [edx + 1]
mov ebp, dword [esp + 0x40]
cmp ebp, ebx
jb 0x5a76cf
mov esi, dword [esp + 0xe4]
jmp 0x5a7721
mov dword [esp + 0xe0], ecx
mov dword [esp + 0x38], eax
lea eax, [0x672920]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00448240
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebx, [ecx + 1]
mov ecx, dword [esp + 0xe0]
mov esi, eax
mov ebp, edx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0xe4], esi
mov dword [esp + 0x40], ebp
shl edx, 4
mov edi, ebx
mov ebx, dword [esp + 0x34]
mov dword [esi + edx], ebx
mov ebx, dword [esp + 0x30]
mov dword [esi + edx + 4], ebx
mov dword [esi + edx + 0xc], eax
mov ebx, dword [0x8d5630]
mov dword [esp + 0x8c], ebx
lea ebp, [esi + edx + 8]
mov dword [esp + 0xf4], ebp
mov ebp, dword [esp + 0x64]
lea esi, [ebp + eax + 8]
add ebp, eax
and esi, 3
sub eax, esi
mov ebx, dword [esp + 0x7c]
lea ebx, [eax + ebx + 0xc]
sub ebp, esi
mov esi, dword [esp + 0x8c]
test esi, esi
jne 0x5a7790
mov esi, dword [esp + 0xe4]
mov dword [esi + edx + 8], ecx
jmp 0x5a7521
mov eax, ecx
mov ecx, edi
mov edi, dword [esp + 0xf4]
call fcn.0045efb0
mov esi, dword [esp + 0xe4]
mov edi, ecx
jmp 0x5a7521
mov edi, dword [esp + 0x3c]
jmp 0x5a77b8
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x130], ebx
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], edi
mov dword [esp + 0x13c], ecx
lea eax, [0x66a400]
mov dword [esp], eax
lea ecx, [esp + 0x130]
mov dword [esp + 4], ecx
call fcn.00408ba0
mov eax, dword [esp + 8]
lea ecx, [0x66a400]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov edx, dword [esp + 0x1dc]
mov esi, dword [esp + 0x110]
jmp 0x5a6e06
inc esi
mov eax, dword [esp + 0x7c]
cmp esi, 0x40
jae 0x5a768b
movzx eax, byte [esi + ebx]
test al, al
jne 0x5a781f
jmp 0x5a7687
mov ecx, esi
mov edx, edi
call fcn.0045f080
mov eax, ebx
mov ecx, edi
call fcn.0045f0a0
mov ecx, edi
mov edx, esi
call fcn.0045f080
mov eax, 3
mov ecx, ebx
call fcn.0045f030
mov eax, edi
mov ecx, esi
call fcn.0045f0a0
mov eax, 3
mov ecx, edi
call fcn.0045f030
mov eax, ebp
mov ecx, edi
call fcn.0045f0a0
mov eax, 3
call fcn.0045f030
call fcn.0045f0a0
lea ecx, [edx + edx*4]
lea ecx, [ebp + ecx*4]
mov edx, edi
mov edi, ecx
lea esi, [esp + 0x9c]
call fcn.0045f71e
mov ecx, dword [esp + 0x78]
add ecx, 0x10
mov esi, ecx
lea ecx, [eax + 0x10]
mov eax, dword [esp + 0x1dc]
mov edi, dword [esp + 0x110]
mov eax, esi
mov edi, ebp
mov esi, dword [esp + 0x110]
mov ebp, edx
mov edx, ebx
mov ebx, dword [esp + 0x1dc]
cmp dword [esi + 0x10], eax
jbe 0x5a7e10
mov dword [esp + 0xe8], edi
mov dword [esp + 0x78], eax
mov dword [esp + 0x58], ecx
lea edi, [esp + 0x9c]
xor eax, eax
call fcn.0045f23b
mov ecx, dword [ebx + 0x2ac]
add ecx, 0xfffffffc
mov edi, ebp
mov ebp, dword [esp + 0x58]
cmp ebp, ecx
jbe 0x5a7920
mov ecx, ebx
mov ebx, dword [0x8ad878]
xor eax, eax
mov dword [esp + 0x20], eax
xor eax, eax
jmp 0x5a7974
mov ecx, dword [ebx + 0x28c]
mov ebp, dword [ebx + 0x288]
mov dword [esp + 0xf8], ebp
mov ebx, dword [ebx + 0x290]
mov ebp, dword [esp + 0x58]
cmp ebp, ecx
ja 0x5a7eb4
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebx, ebp
cmp ecx, 3
jbe 0x5a7eaa
mov ebp, dword [esp + 0xf8]
mov ebp, dword [ebx + ebp]
mov ecx, dword [esp + 0x1dc]
xor ebx, ebx
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x58]
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x9c], ebp
test ebx, ebx
jne 0x5a7e07
mov ebx, dword [esp + 0x58]
lea ebp, [ebx + 4]
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffc
cmp ebx, ebp
jae 0x5a79a8
mov ebx, dword [0x8ad878]
xor ebp, ebp
jmp 0x5a7a3c
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x88], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xf8], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x88]
cmp ebx, ebp
jb 0x5a7ea1
mov dword [esp + 0x54], ebp
mov ebp, dword [esp + 0x84]
mov ebx, dword [esp + 0x58]
sub ebp, ebx
mov dword [esp + 0x8c], ebp
mov ebp, dword [esp + 0x88]
sub ebp, ebx
mov dword [esp + 0x80], ebp
mov ebx, dword [esp + 0x8c]
add ebx, 0xfffffffc
neg ebx
sar ebx, 0x1f
mov ebp, dword [esp + 0x54]
and ebp, ebx
mov ebx, dword [esp + 0x80]
add ebx, 0xfffffffc
cmp ebx, 3
jbe 0x5a7e95
mov ebx, ebp
mov ebp, dword [esp + 0xf8]
mov ebp, dword [ebx + ebp]
xor ebx, ebx
mov dword [esp + 0xa0], ebp
test ebx, ebx
jne 0x5a7dfc
mov ebx, dword [esp + 0x58]
lea ebp, [ebx + 8]
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffc
cmp ebx, ebp
jae 0x5a7a6c
mov ebx, dword [0x8ad878]
xor ebp, ebp
jmp 0x5a7b00
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x88], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xf8], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x88]
cmp ebx, ebp
jb 0x5a7e8c
mov dword [esp + 0x50], ebp
mov ebp, dword [esp + 0x84]
mov ebx, dword [esp + 0x58]
sub ebp, ebx
mov dword [esp + 0x8c], ebp
mov ebp, dword [esp + 0x88]
sub ebp, ebx
mov dword [esp + 0x80], ebp
mov ebx, dword [esp + 0x8c]
add ebx, 0xfffffff8
neg ebx
sar ebx, 0x1f
mov ebp, dword [esp + 0x50]
and ebp, ebx
mov ebx, dword [esp + 0x80]
add ebx, 0xfffffff8
cmp ebx, 3
jbe 0x5a7e80
mov ebx, ebp
mov ebp, dword [esp + 0xf8]
mov ebp, dword [ebx + ebp]
xor ebx, ebx
mov dword [esp + 0xa4], ebp
test ebx, ebx
jne 0x5a7df1
mov ebx, dword [esp + 0x58]
lea ebp, [ebx + 0xc]
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffe
cmp ebx, ebp
jae 0x5a7b30
mov ebx, dword [0x8ad878]
xor ebp, ebp
jmp 0x5a7bc5
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x88], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xf8], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x88]
cmp ebx, ebp
jb 0x5a7e77
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x84]
mov ebx, dword [esp + 0x58]
sub ebp, ebx
mov dword [esp + 0x8c], ebp
mov ebp, dword [esp + 0x88]
sub ebp, ebx
mov dword [esp + 0x80], ebp
mov ebx, dword [esp + 0x8c]
add ebx, 0xfffffff4
neg ebx
sar ebx, 0x1f
mov ebp, dword [esp + 0x4c]
and ebp, ebx
mov ebx, dword [esp + 0x80]
add ebx, 0xfffffff4
cmp ebx, 1
jbe 0x5a7e6b
mov ebx, ebp
mov ebp, dword [esp + 0xf8]
movzx ebp, word [ebx + ebp]
xor ebx, ebx
mov word [esp + 0xa8], bp
test ebx, ebx
jne 0x5a7de6
mov ebx, dword [esp + 0x58]
lea ebp, [ebx + 0xf]
mov dword [esp + 0x8c], ebp
cmp dword [ecx + 0x2ac], ebp
jae 0x5a7bf9
mov ebx, dword [0x8ad878]
mov eax, dword [esp + 0x58]
xor ebp, ebp
jmp 0x5a7c59
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x88], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xf8], ebx
mov ebx, dword [esp + 0x88]
cmp ebx, ebp
jb 0x5a7e62
mov ebx, dword [esp + 0x58]
add ebx, 0xe
cmp ebp, ebx
jb 0x5a7e59
mov ebp, dword [esp + 0x88]
mov eax, dword [esp + 0x58]
sub ebp, eax
add ebp, 0xfffffff2
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebx, ebp
mov ebp, dword [esp + 0xf8]
movzx ebp, byte [ebx + ebp]
xor ebx, ebx
xchg ebp, eax
mov byte [esp + 0xaa], al
xchg ebp, eax
test ebx, ebx
jne 0x5a7ddb
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffe
mov ebp, dword [esp + 0x8c]
cmp ebx, ebp
jae 0x5a7c88
mov ebx, dword [0x8ad878]
xor ebp, ebp
jmp 0x5a7d05
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x88], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xf8], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x88]
cmp ebx, ebp
jb 0x5a7e50
mov ebp, dword [esp + 0x84]
sub ebp, eax
sub ebx, eax
mov dword [esp + 0x80], ebx
add ebp, 0xfffffff1
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
mov ebx, dword [esp + 0x8c]
and ebx, ebp
mov ebp, dword [esp + 0x80]
add ebp, 0xfffffff1
cmp ebp, 1
jbe 0x5a7e44
mov ebp, dword [esp + 0xf8]
movzx ebp, word [ebx + ebp]
xor ebx, ebx
test ebx, ebx
jne 0x5a7dd0
mov ebx, ebp
and ebp, 7
xchg ebp, eax
mov byte [esp + 0xab], al
xchg ebp, eax
mov ebp, ebx
and ebx, 8
shr bx, 3
mov byte [esp + 0xac], bl
mov ebx, ebp
and ebp, 0x10
shr bp, 4
xchg ebp, eax
mov byte [esp + 0xad], al
xchg ebp, eax
mov ebp, ebx
and ebx, 0x20
shr bx, 5
mov byte [esp + 0xae], bl
and ebp, 0xc0
shr bp, 6
xchg ebp, eax
mov byte [esp + 0xaf], al
xchg ebp, eax
lea ebx, [edx + 1]
cmp edi, ebx
jb 0x5a7d73
mov ebp, dword [esp + 0xe8]
jmp 0x5a788e
mov dword [esp + 0x6c], edx
lea eax, [0x682be0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe8]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebx
call fcn.00448240
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x1dc]
mov edx, dword [esp + 0x6c]
mov esi, dword [esp + 0x110]
mov eax, ebp
mov ebp, edi
mov edi, eax
mov eax, dword [esp + 0x58]
jmp 0x5a788e
mov ebp, edi
mov edi, dword [esp + 0xe8]
jmp 0x5a7e10
mov ebp, edi
mov edi, dword [esp + 0xe8]
jmp 0x5a7e10
mov ebp, edi
mov edi, dword [esp + 0xe8]
jmp 0x5a7e10
mov ebp, edi
mov edi, dword [esp + 0xe8]
jmp 0x5a7e10
mov ebp, edi
mov edi, dword [esp + 0xe8]
jmp 0x5a7e10
mov ebp, edi
mov edi, dword [esp + 0xe8]
mov dword [esp], edi
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.00408e70
mov eax, dword [esp + 0xc]
lea ecx, [0x650100]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x1cc], eax
mov esi, dword [esp + 0x110]
jmp 0x5a6e06
mov eax, 1
mov ecx, ebp
call fcn.0045f030
mov eax, ebp
mov ecx, ebx
call fcn.0045f0a0
mov eax, ebx
mov ecx, ebp
call fcn.0045f0a0
mov ecx, ebp
mov edx, ebx
call fcn.0045f080
mov eax, 1
mov ecx, ebx
call fcn.0045f030
mov eax, ebp
mov ecx, ebx
call fcn.0045f0a0
mov eax, 3
mov ecx, ebx
call fcn.0045f030
mov eax, ebp
mov ecx, ebx
call fcn.0045f0a0
mov eax, 3
mov ecx, ebx
call fcn.0045f030
mov eax, ebp
mov ecx, ebx
call fcn.0045f0a0
mov eax, 3
call fcn.0045f030
mov eax, ebp
call fcn.0045f0a0
mov eax, 3
mov ecx, ebx
call fcn.0045f030
mov ecx, ebx
call fcn.0045f0a0
mov eax, 3
mov ecx, ebx
call fcn.0045f030
mov eax, edx
mov ecx, ebx
call fcn.0045f0a0
mov eax, 3
mov ecx, ebx
call fcn.0045f030
mov eax, esi
mov ecx, ebp
call fcn.0045f0a0
mov eax, 3
call fcn.0045f030
call fcn.0045f0a0
call fcn.00432e40
nop
call fcn.0045dba0
jmp fcn.005a6250