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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xd4]
cmp eax, dword [ecx + 8]
jbe 0x5f2903
sub esp, 0x154
lea edi, [esp + 0x128]
xor eax, eax
call fcn.00464655
lea ecx, [0x7971c0]
mov dword [esp], ecx
call fcn.0040bcc0
mov ecx, dword [esp + 4]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], 0
mov edx, dword [esp + 0x15c]
mov dword [esp], edx
call fcn.004094f0
mov ecx, dword [esp + 4]
lea edx, [0x758e40]
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], ecx
lea ecx, [0x7d4f45]
mov dword [esp], ecx
mov dword [esp + 4], 0x37
lea ecx, [esp + 0xcc]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004d9ce0
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xa4], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x64], edx
lea ebx, [0x7971c0]
mov dword [esp], ebx
mov ebp, dword [esp + 0xc4]
mov dword [esp + 4], ebp
call fcn.00409410
mov ecx, dword [esp + 8]
lea edx, [0x7971c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004ca510
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x5f28fd
mov dword [esp + 0x84], ecx
mov eax, dword [esp + 0x160]
mov ebx, eax
xor edx, edx
div ecx
mov dword [esp + 0x68], eax
xor edx, edx
jmp 0x5f0ebb
mov ebp, dword [esp + 0x5c]
inc ebp
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esp + 0x160]
mov edx, ebp
cmp edx, eax
jae 0x5f1fc0
mov dword [esp + 0x5c], edx
mov eax, dword [esp + 0x158]
mov dword [esp], eax
imul ecx, edx
mov ebp, dword [esp + 0x15c]
add ecx, ebp
mov dword [esp + 4], ecx
call fcn.00602c20
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x158]
mov dword [esp], ecx
lea edx, [0x73dd20]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x10], eax
call fcn.00603910
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5f1f6b
mov esi, dword [esp + 0xc4]
mov ebx, dword [esi + 0xc]
cmp ebx, 0xc
ja 0x5f1606
cmp ebx, 2
jne 0x5f150e
mov eax, dword [esi + 0x18]
mov edx, dword [esp + 0x158]
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x5f0f66
mov ecx, dword [0xa846b0]
xor ebx, ebx
jmp 0x5f0f9d
mov ecx, dword [edx + 0x28c]
mov ebx, dword [edx + 0x288]
mov ebp, dword [edx + 0x290]
cmp ecx, eax
jb 0x5f28f8
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp ecx, 3
jbe 0x5f28ee
mov ebx, dword [ebx + eax]
xor ecx, ecx
test ecx, ecx
jne 0x5f0ea2
cmp ebx, 0x53445352
je 0x5f1273
cmp ebx, 0x3031424e
jne 0x5f18ff
lea eax, [0x7724e0]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0xc8], eax
mov ecx, dword [esp + 0xc4]
mov edx, dword [ecx + 0x18]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0x158]
mov dword [esp], ebx
lea ebp, [0x73d260]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov esi, dword [esp + 0x160]
mov dword [esp + 0x10], esi
call fcn.00603910
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5f102b
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
lea edi, [esp + 0xf4]
xor eax, eax
call fcn.0046465a
mov ecx, dword [esp + 0xc8]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0xf4], edx
mov dword [esp + 0xf8], ecx
mov ecx, dword [esp + 0x50]
lea edx, [ecx + 8]
mov ebx, dword [esp + 0x158]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp ebp, edx
jae 0x5f1078
mov edx, dword [0xa846b0]
xor ebp, ebp
jmp 0x5f10b5
mov ebp, dword [ebx + 0x28c]
mov esi, dword [ebx + 0x288]
mov edi, dword [ebx + 0x290]
cmp ebp, edx
jb 0x5f28e5
sub edi, ecx
sub ebp, ecx
add edi, 0xfffffff8
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edx, edi
add ebp, 0xfffffff8
cmp ebp, 3
jbe 0x5f28d9
mov ebp, dword [edx + esi]
xor edx, edx
mov dword [esp + 0xfc], ebp
test edx, edx
je 0x5f10ce
mov edx, ebx
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
lea edx, [ecx + 0xc]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp ebp, edx
jae 0x5f10e8
mov edx, dword [0xa846b0]
xor ebp, ebp
jmp 0x5f1125
mov ebp, dword [ebx + 0x28c]
mov esi, dword [ebx + 0x288]
mov edi, dword [ebx + 0x290]
cmp ebp, edx
jb 0x5f28d0
sub edi, ecx
sub ebp, ecx
add edi, 0xfffffff4
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edx, edi
add ebp, 0xfffffff4
cmp ebp, 3
jbe 0x5f28c4
mov ebp, dword [edx + esi]
xor edx, edx
mov dword [esp + 0x100], ebp
test edx, edx
je 0x5f113e
mov edx, ebx
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
mov edx, dword [esp + 0xc4]
mov ebp, dword [edx + 0x10]
add ebp, 0xffffffef
test ebp, ebp
jbe 0x5f122f
mov dword [esp + 0x38], ebp
lea eax, [0x74ac80]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0xb8], eax
lea ecx, [0x758ec0]
mov dword [esp], ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.0044b030
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov edi, dword [esp + 0xb8]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0xaab020]
test edx, edx
jne 0x5f11ad
mov dword [edi], eax
jmp 0x5f11b2
call fcn.004643b0
mov eax, dword [esp + 0x158]
mov dword [esp], eax
lea edx, [0x73a1a0]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x50]
add ebx, 0x10
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00603910
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5f11f9
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
mov eax, dword [esp + 0xb8]
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.0044eeb0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
lea eax, [0x786ca0]
mov dword [esp], eax
lea ecx, [esp + 0xf4]
mov dword [esp + 4], ecx
call fcn.004093b0
mov eax, dword [esp + 8]
lea ecx, [0x786ca0]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f18ff
lea eax, [0x786d20]
mov dword [esp], eax
call fcn.0040bcc0
mov edi, dword [esp + 4]
mov dword [esp + 0xc0], edi
lea esi, str.RSDS
call fcn.00464b20
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x80], ecx
lea edx, [0x78ea80]
mov dword [esp], edx
mov ebx, dword [esp + 0xc0]
lea ebp, [ebx + 4]
mov dword [esp + 0xb0], ebp
mov dword [esp + 4], ebp
call fcn.00409410
mov eax, dword [esp + 8]
lea ecx, [0x78ea80]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ca510
mov eax, dword [esp + 8]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x158]
mov dword [esp], ecx
lea edx, [0x762d80]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xb0]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x80]
lea ebp, [ebx + 4]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.00603910
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5f133a
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
mov edx, dword [esp + 0x80]
mov ebx, dword [esp + 0x7c]
lea eax, [ebx + edx + 4]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x158]
mov edi, dword [esi + 0x2ac]
add edi, 0xfffffffc
cmp eax, edi
jbe 0x5f136a
mov eax, dword [0xa846b0]
xor ecx, ecx
jmp 0x5f13aa
mov ecx, dword [esi + 0x28c]
mov edi, dword [esi + 0x288]
mov edx, dword [esi + 0x290]
cmp ecx, eax
jb 0x5f28bf
sub edx, ebp
sub ecx, ebp
add edx, 0xfffffffc
neg edx
sar edx, 0x1f
and edx, eax
add ecx, 0xfffffffc
cmp ecx, 3
jbe 0x5f28b5
mov ecx, dword [edx + edi]
mov edx, dword [esp + 0x80]
xor eax, eax
mov ebp, dword [esp + 0xc0]
mov dword [ebp + 0x14], ecx
test eax, eax
je 0x5f13c6
mov edx, esi
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
lea eax, [ebx + edx + 8]
mov ecx, dword [esp + 0xc4]
mov edx, dword [ecx + 0x10]
add edx, 0xffffffe7
test edx, edx
jbe 0x5f14d1
mov dword [esp + 0x54], eax
mov dword [esp + 0x3c], edx
lea eax, [0x74ac80]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0xbc], eax
lea ecx, [0x758ec0]
mov dword [esp], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.0044b030
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0xbc]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0xaab020]
test edx, edx
jne 0x5f143d
mov dword [edi], eax
jmp 0x5f1442
call fcn.004643b0
mov eax, dword [esp + 0x158]
mov dword [esp], eax
lea edx, [0x73a1a0]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x54]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00603910
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5f1486
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
mov eax, dword [esp + 0xbc]
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.0044eeb0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc0]
mov dword [edx + 0x1c], ecx
mov ecx, dword [0xaab020]
test ecx, ecx
jne 0x5f14c7
mov dword [edx + 0x18], eax
jmp 0x5f14cf
lea edi, [edx + 0x18]
call fcn.004643b0
mov ebp, edx
lea eax, [0x786d20]
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.004093b0
mov eax, dword [esp + 8]
lea ecx, [0x786d20]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f18ff
cmp ebx, 3
jne 0x5f152e
mov ecx, dword [esi + 0x18]
mov ebx, dword [esp + 0x158]
xor eax, eax
xor edx, edx
lea ebp, [0xaaacd4]
xor edi, edi
jmp 0x5f236c
cmp ebx, 0xc
jne 0x5f18ff
lea eax, [0x78d400]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0xb4], eax
lea ecx, [0x78d400]
mov dword [esp], ecx
call fcn.00409410
mov eax, dword [esp + 8]
lea ecx, [0x78d400]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ca510
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc4]
mov edx, dword [ecx + 0x18]
mov ebx, dword [esp + 0x158]
mov dword [esp], ebx
lea ebp, [0x73f060]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xb4]
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.00603910
mov eax, dword [esp + 0x14]
test eax, eax
je 0x5f15c9
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
lea eax, [0x78d400]
mov dword [esp], eax
mov ecx, dword [esp + 0xb4]
mov dword [esp + 4], ecx
call fcn.00409410
mov eax, dword [esp + 8]
lea ecx, [0x78d400]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov esi, dword [esp + 0xc4]
jmp 0x5f18ff
cmp ebx, 0xd
jne 0x5f16e5
mov eax, dword [esi + 0x18]
mov ebx, dword [esp + 0x158]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp eax, ebp
jbe 0x5f1632
mov ebp, dword [0xa846b0]
mov edx, ebx
xor ebx, ebx
jmp 0x5f1668
mov ecx, dword [ebx + 0x28c]
mov ebp, dword [ebx + 0x288]
mov edx, ebx
mov ebx, dword [ebx + 0x290]
cmp ecx, eax
jb 0x5f231d
sub ecx, eax
sub ebx, eax
neg ebx
sar ebx, 0x1f
and eax, ebx
cmp ecx, 3
jbe 0x5f2313
mov ebx, dword [ebp + eax]
xor ebp, ebp
test ebp, ebp
jne 0x5f0ea2
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
cmp ebx, 0x4c544347
ja 0x5f16b5
test ebx, ebx
je 0x5f16d1
cmp ebx, 0x4c544347
je 0x5f16d1
jmp 0x5f18ff
cmp ebx, 0x50474900
je 0x5f16d1
cmp ebx, 0x50474f00
je 0x5f16d1
cmp ebx, 0x50475500
jne 0x5f18ff
mov dword [esp + 0xe4], ebx
mov ebx, dword [esi + 0x18]
add ebx, 4
xor eax, eax
jmp 0x5f2036
cmp ebx, 0x10
jne 0x5f186f
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
mov eax, dword [esi + 0x18]
mov ebx, dword [esp + 0x158]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp eax, ebp
jbe 0x5f173b
mov ebp, dword [0xa846b0]
xor edi, edi
jmp 0x5f1772
mov ecx, dword [ebx + 0x28c]
mov ebp, dword [ebx + 0x288]
mov edi, dword [ebx + 0x290]
cmp ecx, eax
jb 0x5f201c
sub ecx, eax
sub edi, eax
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
cmp ecx, 3
jbe 0x5f2012
mov edi, dword [edi + ebp]
xor ebp, ebp
mov dword [esp + 0xd4], edi
test ebp, ebp
je 0x5f1784
mov edx, ebx
jmp 0x5f0ea2
mov dword [esp + 0x24], edi
lea ebp, [eax + 4]
lea ecx, [edi + eax + 4]
cmp ecx, ebp
mov edx, esi
xchg esi, ebx
seta bl
xchg esi, ebx
test edi, edi
xchg edi, ebx
seta bl
xchg edi, ebx
xchg edi, eax
xchg esi, ebx
cmp al, bl
xchg esi, ebx
xchg edi, eax
je 0x5f17bb
mov eax, dword [0xa846b0]
xor esi, esi
xor ecx, ecx
xor ebp, ebp
jmp 0x5f180b
mov esi, dword [ebx + 0x2ac]
cmp esi, ebp
jbe 0x5f17c9
cmp esi, ecx
jae 0x5f17d7
mov eax, dword [0xa846b0]
xor esi, esi
xor ecx, ecx
xor ebp, ebp
jmp 0x5f180b
mov esi, dword [ebx + 0x290]
mov edi, dword [ebx + 0x288]
cmp esi, ecx
jb 0x5f200b
cmp ecx, ebp
jb 0x5f2004
sub esi, eax
lea ecx, [esi - 4]
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, ebp
add ecx, edi
xor eax, eax
mov ebp, ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], esi
test eax, eax
je 0x5f1832
mov edx, ebx
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
lea eax, [0x772d80]
mov dword [esp], eax
lea ecx, [esp + 0xd4]
mov dword [esp + 4], ecx
call fcn.004093b0
mov eax, dword [esp + 8]
lea ecx, [0x772d80]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov esi, dword [esp + 0xc4]
jmp 0x5f18ff
cmp ebx, 0x14
jne 0x5f18ff
mov eax, dword [esi + 0x18]
mov edx, dword [esp + 0x158]
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x5f1899
mov eax, dword [0xa846b0]
xor ecx, ecx
jmp 0x5f18d0
mov ecx, dword [edx + 0x28c]
mov ebx, dword [edx + 0x288]
mov ebp, dword [edx + 0x290]
cmp ecx, eax
jb 0x5f1fff
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp ecx, 3
jbe 0x5f1ff5
mov ecx, dword [ebx + eax]
xor eax, eax
test eax, eax
jne 0x5f0ea2
mov dword [esp], ecx
call fcn.004094f0
mov eax, dword [esp + 4]
lea ecx, [0x75fd80]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov esi, dword [esp + 0xc4]
lea edi, [esp + 0x128]
call fcn.00464b2a
mov ecx, dword [esp + 0xc4]
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x30], edx
lea edi, [esp + 0x10c]
xor eax, eax
call fcn.00464659
lea ecx, [0x75be20]
mov dword [esp], ecx
mov dword [esp + 4], 0x11
lea ebx, [esp + 0x10c]
mov dword [esp + 8], ebx
call fcn.0040c820
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xa8], ecx
lea edx, [0x75be20]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 7
mov ecx, dword [0xaab020]
test ecx, ecx
jne 0x5f198c
lea eax, [0x7b7153]
mov dword [edi], eax
jmp 0x5f1997
lea eax, [0x7b7153]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 4
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f19d7
lea eax, [0x7b5b19]
mov dword [edi], eax
jmp 0x5f19e2
lea eax, [0x7b5b19]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 2
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 8
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1a22
lea eax, [0x7b75f7]
mov dword [edi], eax
jmp 0x5f1a2d
lea eax, [0x7b75f7]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 3
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 3
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1a6d
lea eax, [0x7b5013]
mov dword [edi], eax
jmp 0x5f1a78
lea eax, [0x7b5013]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 4
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 4
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1ab8
lea eax, [0x7b5b79]
mov dword [edi], eax
jmp 0x5f1ac3
lea eax, [0x7b5b79]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 5
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 9
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1b03
lea eax, [0x7b7d6a]
mov dword [edi], eax
jmp 0x5f1b0e
lea eax, [0x7b7d6a]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 6
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 5
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1b4e
lea eax, [0x7b6206]
mov dword [edi], eax
jmp 0x5f1b59
lea eax, [0x7b6206]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0xb
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1b99
lea eax, [0x7b8f5d]
mov dword [edi], eax
jmp 0x5f1ba4
lea eax, [0x7b8f5d]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 8
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0xd
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1be4
lea eax, [0x7ba7ba]
mov dword [edi], eax
jmp 0x5f1bef
lea eax, [0x7ba7ba]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 9
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 7
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1c2f
lea eax, [0x7b6f69]
mov dword [edi], eax
jmp 0x5f1c3a
lea eax, [0x7b6f69]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 8
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1c7a
lea eax, [0x7b7777]
mov dword [edi], eax
jmp 0x5f1c85
lea eax, [0x7b7777]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xc
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0xa
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1cc5
lea eax, [0x7b8716]
mov dword [edi], eax
jmp 0x5f1cd0
lea eax, [0x7b8716]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xd
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 4
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1d10
lea eax, [0x7b5ba9]
mov dword [edi], eax
jmp 0x5f1d1b
lea eax, [0x7b5ba9]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xe
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 5
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1d5b
lea eax, [0x7b6459]
mov dword [edi], eax
jmp 0x5f1d66
lea eax, [0x7b6459]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xf
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 3
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1da6
lea eax, [0x7b505b]
mov dword [edi], eax
jmp 0x5f1db1
lea eax, [0x7b505b]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x10
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 5
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1df1
lea eax, [0x7b62b0]
mov dword [edi], eax
jmp 0x5f1dfc
lea eax, [0x7b62b0]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x14
call fcn.0040ea30
mov edi, dword [esp + 0xc]
mov dword [edi + 4], 0x16
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1e3c
lea eax, [0x7c15c5]
mov dword [edi], eax
jmp 0x5f1e47
lea eax, [0x7c15c5]
call fcn.004643b0
lea eax, [0x75be20]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 8], ecx
call fcn.0040e8d0
mov eax, dword [esp + 0xc]
movzx ecx, byte [esp + 0x10]
mov edx, dword [eax]
mov eax, dword [eax + 4]
test cl, cl
jne 0x5f1e85
mov eax, 1
lea edx, [0x841a6c]
mov dword [esp + 0x14c], edx
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x158]
mov ecx, dword [eax + 0xf4]
mov edx, dword [eax + 0xfc]
mov ebx, dword [eax + 0xf8]
inc ebx
cmp edx, ebx
jae 0x5f1f14
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x780540]
mov dword [esp + 0x10], eax
call fcn.0044b1b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x158]
mov dword [ebx + 0xfc], edx
mov edx, dword [0xaab020]
test edx, edx
jne 0x5f1efe
mov dword [ebx + 0xf4], eax
jmp 0x5f1f09
lea edi, [ebx + 0xf4]
call fcn.004643b0
mov ebx, ecx
mov ecx, eax
mov eax, dword [esp + 0x158]
mov dword [eax + 0xf8], ebx
imul edx, ebx, 0x2c
lea edi, [edx + ecx - 0x2c]
mov ecx, dword [0xaab020]
test ecx, ecx
jne 0x5f1f39
lea esi, [esp + 0x128]
call fcn.00464b02
jmp 0x5f1f5d
lea eax, [0x780540]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x128]
mov dword [esp + 8], eax
call fcn.00411480
mov eax, dword [esp + 0x158]
mov edx, eax
mov esi, dword [esp + 0xc4]
jmp 0x5f0ea2
lea eax, [0x769820]
mov dword [esp], eax
call fcn.0040bcc0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x64]
mov dword [edi + 4], eax
mov eax, dword [0xaab020]
test eax, eax
jne 0x5f1f99
mov eax, dword [esp + 0xa4]
mov dword [edi], eax
jmp 0x5f1fa5
mov eax, dword [esp + 0xa4]
call fcn.004643b0
lea eax, [0x844124]
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], edi
add esp, 0x154
ret
mov eax, dword [esp + 0x158]
mov ecx, dword [eax + 0xf8]
test ecx, ecx
je 0x5f1fd8
mov byte [eax + 0x2a1], 1
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
add esp, 0x154
ret
mov eax, 3
call fcn.00464430
call fcn.004644a0
mov eax, ebp
call fcn.004644a0
mov edx, esi
call fcn.00464480
mov eax, 3
call fcn.00464430
call fcn.004644a0
lea ebp, [esi + 0xc]
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
mov eax, ebx
mov ebx, ebp
mov ebp, dword [esi + 0x10]
add ebp, 0xfffffffc
cmp eax, ebp
jae 0x5f2273
mov ebp, dword [edx + 0x2ac]
add ebp, 0xfffffffc
cmp ebx, ebp
jbe 0x5f205b
mov edi, dword [0xa846b0]
xor ecx, ecx
jmp 0x5f209b
mov ecx, dword [edx + 0x28c]
mov edi, dword [edx + 0x288]
mov esi, dword [edx + 0x290]
cmp ebx, ecx
ja 0x5f230c
sub ecx, ebx
sub esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebx
cmp ecx, 3
jbe 0x5f2302
mov esi, dword [esi + edi]
xor edi, edi
mov ecx, esi
mov esi, dword [esp + 0xc4]
test edi, edi
jne 0x5f2273
lea edi, [ebx + 4]
cmp ebp, edi
jae 0x5f20b4
mov ebp, dword [0xa846b0]
xor edi, edi
jmp 0x5f2108
mov ebp, dword [edx + 0x28c]
mov esi, dword [edx + 0x288]
mov dword [esp + 0xac], esi
mov esi, dword [edx + 0x290]
cmp ebp, edi
jb 0x5f22f9
sub esi, ebx
sub ebp, ebx
add esi, 0xfffffffc
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and edi, esi
add ebp, 0xfffffffc
cmp ebp, 3
jbe 0x5f22ed
mov esi, dword [esp + 0xac]
mov esi, dword [edi + esi]
xor ebp, ebp
mov edi, esi
mov esi, dword [esp + 0xc4]
test ebp, ebp
jne 0x5f2273
mov dword [esp + 0x28], edi
mov ebp, dword [edx + 0x290]
mov esi, dword [edx + 0x288]
lea edi, [ebx + 0x48]
cmp ebp, edi
jb 0x5f22e4
mov dword [esp + 0xac], esi
lea esi, [ebx + 8]
cmp edi, esi
jb 0x5f22db
mov dword [esp + 0x70], eax
sub ebp, ebx
add ebp, 0xfffffff8
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and esi, ebp
mov ebp, dword [esp + 0xac]
add ebp, esi
xor esi, esi
jmp 0x5f22bc
mov eax, dword [esp + 0x70]
cmp esi, edi
ja 0x5f22d2
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x58], ebx
mov dword [esp], 0
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0044eeb0
mov eax, dword [esp + 0xec]
inc eax
mov ecx, dword [esp + 0xe8]
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
cmp edx, eax
jae 0x5f21ff
mov dword [esp + 0x34], ebp
mov dword [esp + 0x9c], ebx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x780ac0]
mov dword [esp + 0x10], eax
call fcn.0044b1b0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xf0], edx
mov dword [esp + 0xe8], ecx
mov ebx, dword [esp + 0x9c]
mov ebp, dword [esp + 0x34]
mov dword [esp + 0xec], eax
lea esi, [eax - 1]
shl esi, 4
mov eax, ebx
mov ebx, dword [esp + 0x2c]
mov dword [ecx + esi], ebx
mov ebx, dword [esp + 0x28]
mov dword [ecx + esi + 4], ebx
mov dword [ecx + esi + 0xc], ebp
mov ebx, dword [0xaab020]
mov dword [esp + 0x80], ebx
lea edi, [ecx + esi + 8]
mov edx, esi
mov esi, dword [esp + 0x58]
lea ebx, [esi + ebp + 8]
add esi, ebp
and ebx, 3
mov dword [esp + 0x78], ebx
sub ebp, ebx
mov ebx, dword [esp + 0x70]
lea ebx, [ebp + ebx + 0xc]
mov ebp, dword [esp + 0x78]
sub esi, ebp
mov ebp, dword [esp + 0x80]
test ebp, ebp
jne 0x5f2269
mov dword [ecx + edx + 8], eax
jmp 0x5f2021
call fcn.004643b0
jmp 0x5f2021
lea eax, [0x772cc0]
mov dword [esp], eax
lea ecx, [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.004093b0
mov eax, dword [esp + 8]
lea ecx, [0x772cc0]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
jmp 0x5f18ff
inc esi
mov eax, dword [esp + 0x70]
cmp esi, 0x40
jae 0x5f2167
movzx eax, byte [esi + ebp]
test al, al
jne 0x5f22b7
jmp 0x5f2163
mov ecx, esi
mov edx, edi
call fcn.00464480
mov eax, esi
mov ecx, edi
call fcn.004644a0
mov ecx, edi
mov edx, ebp
call fcn.00464480
mov eax, 3
mov ecx, ebp
call fcn.00464430
mov eax, edi
mov ecx, ebp
call fcn.004644a0
mov eax, 3
call fcn.00464430
mov eax, ebx
call fcn.004644a0
mov eax, 3
call fcn.00464430
call fcn.004644a0
mov dword [esp + 0xa0], edi
lea ecx, [ebx + ebx*4]
lea ecx, [edi + ecx*4 - 0x14]
mov edi, ecx
lea esi, [esp + 0x88]
call fcn.00464b3e
mov ecx, dword [esp + 0x6c]
add ecx, 0x10
mov esi, ecx
lea ecx, [eax + 0x10]
mov eax, dword [esp + 0xc4]
mov edi, dword [esp + 0xa0]
mov eax, esi
mov ebp, edi
mov edi, ebx
mov ebx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
cmp dword [esi + 0x10], eax
jbe 0x5f280a
mov dword [esp + 0x60], edi
mov dword [esp + 0x6c], eax
mov dword [esp + 0x4c], ecx
lea edi, [esp + 0x88]
xor eax, eax
call fcn.0046465b
mov ecx, dword [ebx + 0x2ac]
add ecx, 0xfffffffc
mov edi, ebp
mov ebp, dword [esp + 0x4c]
cmp ebp, ecx
jbe 0x5f23b4
mov ecx, ebx
mov ebx, dword [0xa846b0]
xor eax, eax
mov dword [esp + 0x20], eax
xor eax, eax
jmp 0x5f2408
mov ecx, dword [ebx + 0x28c]
mov ebp, dword [ebx + 0x288]
mov dword [esp + 0xac], ebp
mov ebx, dword [ebx + 0x290]
mov ebp, dword [esp + 0x4c]
cmp ebp, ecx
ja 0x5f28ae
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebx, ebp
cmp ecx, 3
jbe 0x5f28a4
mov ebp, dword [esp + 0xac]
mov ebp, dword [ebx + ebp]
mov ecx, dword [esp + 0x158]
xor ebx, ebx
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x4c]
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x88], ebp
test ebx, ebx
jne 0x5f2804
mov ebx, dword [esp + 0x4c]
lea ebp, [ebx + 4]
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffc
cmp ebx, ebp
jae 0x5f2439
mov ebx, dword [0xa846b0]
xor ebp, ebp
jmp 0x5f24ac
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x7c], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xac], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x5f289b
mov dword [esp + 0x48], ebp
mov ebp, dword [esp + 0x4c]
sub ebx, ebp
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x74]
sub ebx, ebp
add ebx, 0xfffffffc
neg ebx
sar ebx, 0x1f
mov ebp, dword [esp + 0x48]
and ebp, ebx
mov ebx, dword [esp + 0x80]
add ebx, 0xfffffffc
cmp ebx, 3
jbe 0x5f288f
mov ebx, ebp
mov ebp, dword [esp + 0xac]
mov ebp, dword [ebx + ebp]
xor ebx, ebx
mov dword [esp + 0x8c], ebp
test ebx, ebx
jne 0x5f27fc
mov ebx, dword [esp + 0x4c]
lea ebp, [ebx + 8]
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffc
cmp ebx, ebp
jae 0x5f24d9
mov ebx, dword [0xa846b0]
xor ebp, ebp
jmp 0x5f2558
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x7c], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xac], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x5f2886
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x74]
mov ebx, dword [esp + 0x4c]
sub ebp, ebx
mov dword [esp + 0x80], ebp
mov ebp, dword [esp + 0x7c]
sub ebp, ebx
mov dword [esp + 0x78], ebp
mov ebx, dword [esp + 0x80]
add ebx, 0xfffffff8
neg ebx
sar ebx, 0x1f
mov ebp, dword [esp + 0x44]
and ebp, ebx
mov ebx, dword [esp + 0x78]
add ebx, 0xfffffff8
cmp ebx, 3
jbe 0x5f287a
mov ebx, ebp
mov ebp, dword [esp + 0xac]
mov ebp, dword [ebx + ebp]
xor ebx, ebx
mov dword [esp + 0x90], ebp
test ebx, ebx
jne 0x5f27f4
mov ebx, dword [esp + 0x4c]
lea ebp, [ebx + 0xc]
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffe
cmp ebx, ebp
jae 0x5f2588
mov ebx, dword [0xa846b0]
xor ebp, ebp
jmp 0x5f2608
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x7c], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xac], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x5f2871
mov dword [esp + 0x40], ebp
mov ebp, dword [esp + 0x74]
mov ebx, dword [esp + 0x4c]
sub ebp, ebx
mov dword [esp + 0x80], ebp
mov ebp, dword [esp + 0x7c]
sub ebp, ebx
mov dword [esp + 0x78], ebp
mov ebx, dword [esp + 0x80]
add ebx, 0xfffffff4
neg ebx
sar ebx, 0x1f
mov ebp, dword [esp + 0x40]
and ebp, ebx
mov ebx, dword [esp + 0x78]
add ebx, 0xfffffff4
cmp ebx, 1
jbe 0x5f2865
mov ebx, ebp
mov ebp, dword [esp + 0xac]
movzx ebp, word [ebx + ebp]
xor ebx, ebx
mov word [esp + 0x94], bp
test ebx, ebx
jne 0x5f27ec
mov ebx, dword [esp + 0x4c]
lea ebp, [ebx + 0xf]
mov dword [esp + 0x80], ebp
cmp dword [ecx + 0x2ac], ebp
jae 0x5f263c
mov ebx, dword [0xa846b0]
mov eax, dword [esp + 0x4c]
xor ebp, ebp
jmp 0x5f2693
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x7c], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xac], ebx
mov ebx, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x5f285c
mov ebx, dword [esp + 0x4c]
add ebx, 0xe
cmp ebp, ebx
jb 0x5f2853
mov ebp, dword [esp + 0x7c]
mov eax, dword [esp + 0x4c]
sub ebp, eax
add ebp, 0xfffffff2
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebx, ebp
mov ebp, dword [esp + 0xac]
movzx ebp, byte [ebx + ebp]
xor ebx, ebx
xchg ebp, eax
mov byte [esp + 0x96], al
xchg ebp, eax
test ebx, ebx
jne 0x5f27e4
mov ebx, dword [ecx + 0x2ac]
add ebx, 0xfffffffe
mov ebp, dword [esp + 0x80]
cmp ebx, ebp
jae 0x5f26c2
mov ebx, dword [0xa846b0]
xor ebp, ebp
jmp 0x5f272d
mov ebx, dword [ecx + 0x28c]
mov dword [esp + 0x7c], ebx
mov ebx, dword [ecx + 0x288]
mov dword [esp + 0xac], ebx
mov ebx, dword [ecx + 0x290]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x5f284a
mov ebp, dword [esp + 0x74]
sub ebp, eax
sub ebx, eax
mov dword [esp + 0x78], ebx
add ebp, 0xfffffff1
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
mov ebx, dword [esp + 0x80]
and ebx, ebp
mov ebp, dword [esp + 0x78]
add ebp, 0xfffffff1
cmp ebp, 1
jbe 0x5f283e
mov ebp, dword [esp + 0xac]
movzx ebp, word [ebx + ebp]
xor ebx, ebx
test ebx, ebx
jne 0x5f27dc
mov ebx, ebp
and ebp, 7
xchg ebp, eax
mov byte [esp + 0x97], al
xchg ebp, eax
mov ebp, ebx
and ebx, 8
shr bx, 3
mov byte [esp + 0x98], bl
mov ebx, ebp
and ebp, 0x10
shr bp, 4
xchg ebp, eax
mov byte [esp + 0x99], al
xchg ebp, eax
mov ebp, ebx
and ebx, 0x20
shr bx, 5
mov byte [esp + 0x9a], bl
and ebp, 0xc0
shr bp, 6
xchg ebp, eax
mov byte [esp + 0x9b], al
xchg ebp, eax
mov ebx, dword [esp + 0x60]
inc ebx
cmp edx, ebx
jae 0x5f2322
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x79bb40]
mov dword [esp + 0x10], eax
call fcn.0044b1b0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x158]
mov esi, dword [esp + 0xc4]
mov edi, ebp
jmp 0x5f2322
mov ebp, edi
mov edi, dword [esp + 0x60]
jmp 0x5f280a
mov ebp, edi
mov edi, dword [esp + 0x60]
jmp 0x5f280a
mov ebp, edi
mov edi, dword [esp + 0x60]
jmp 0x5f280a
mov ebp, edi
mov edi, dword [esp + 0x60]
jmp 0x5f280a
mov ebp, edi
mov edi, dword [esp + 0x60]
jmp 0x5f280a
mov ebp, edi
mov edi, dword [esp + 0x60]
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], edx
call fcn.00409680
mov eax, dword [esp + 0xc]
lea ecx, [0x748100]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x148], eax
mov esi, dword [esp + 0xc4]
jmp 0x5f18ff
mov eax, 1
mov ecx, ebp
call fcn.00464430
mov eax, ebp
mov ecx, ebx
call fcn.004644a0
mov eax, ebx
mov ecx, ebp
call fcn.004644a0
mov ecx, ebp
mov edx, ebx
call fcn.00464480
mov eax, 1
mov ecx, ebx
call fcn.00464430
mov eax, ebp
mov ecx, ebx
call fcn.004644a0
mov eax, 3
mov ecx, ebx
call fcn.00464430
mov eax, ebp
mov ecx, ebx
call fcn.004644a0
mov eax, 3
mov ecx, ebx
call fcn.00464430
mov eax, ebp
mov ecx, ebx
call fcn.004644a0
mov eax, 3
call fcn.00464430
mov eax, ebp
call fcn.004644a0
mov eax, 3
call fcn.00464430
call fcn.004644a0
mov eax, 3
mov ecx, ebp
call fcn.00464430
mov eax, edx
mov ecx, ebp
call fcn.004644a0
mov eax, 3
mov ecx, ebp
call fcn.00464430
mov eax, edx
mov ecx, ebp
call fcn.004644a0
mov eax, 3
call fcn.00464430
call fcn.004644a0
call fcn.004351e0
nop
call fcn.00462fa0
jmp fcn.005f0d80