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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100618ad
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x190
cmp byte [ebp + 0x14], 0
push ebx
push esi
push edi
mov esi, edx
mov dword [esp + 0x48], ecx
je 0x10023878
cmp byte [ebp + 0x1c], 0
je 0x1002375a
mov edi, dword [ebp + 0x20]
mov esi, dword [edi]
mov edi, dword [edi + 4]
cmp esi, edi
je 0x1002440c
xor ebx, ebx
push esi
lea ecx, [esp + 0x124]
call fcn.10003479
mov dword [esp + 0x1a4], ebx
lea eax, [esp + 0x120]
cmp dword [esp + 0x134], 8
cmovae eax, dword [esp + 0x120]
mov dword [esp + 0x3c], eax
call fcn.10048c29
push 0xa
mov dword [eax], ebx
lea eax, [esp + 0x98]
push eax
push dword [esp + 0x44]
call fcn.10048e5e
mov ecx, dword [esp + 0x54]
add esp, 0xc
mov dword [esp + 0x84], eax
lea eax, [esp + 0x84]
push eax
call fcn.10027465
or dword [esp + 0x1a4], 0xffffffff
lea ecx, [esp + 0x120]
push ebx
push 1
call fcn.10003d73
add esi, 0x18
cmp esi, edi
jne 0x100236cf
jmp 0x1002440c
mov eax, dword [esi]
imul eax, dword [esi]
imul eax, eax, 0xbf0b
test eax, eax
je 0x1002383c
xor ebx, ebx
mov dword [esp + 0x14], 0xfffffff7
mov dword [esp + 0x18], ebx
lea ecx, [esp + 0xb4]
push 4
call fcn.100034db
mov dword [esp + 0x1c], 8
mov dword [esp + 0x10], ebx
jmp 0x100237ad
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xb4]
mov dword [eax + ecx*4], 0xae4f9dbc
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x10023797
mov ecx, dword [ebp + 0x30]
mov dword [ecx], 0x452a26f
mov eax, dword [ecx]
mov dword [ecx], 0xfffc
mov ecx, 0xfffa
mov eax, dword [esp + 0x14]
cmp ecx, eax
mov eax, dword [ebp + 0x2c]
sbb ecx, ecx
inc ecx
mov eax, dword [eax]
mov dword [eax], ecx
mov ecx, dword [esp + 0x14]
sub ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [esi]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [esi]
setle cl
xor edx, edx
cmp ecx, 0xfffffffb
mov ecx, dword [ebp + 0x10]
setl dl
sub edx, eax
mov eax, dword [esp + 0xb4]
mov dword [eax], edx
mov eax, dword [esi]
mov eax, dword [ecx]
mov eax, dword [esp + 0x18]
mov eax, dword [ecx]
lea ecx, [esp + 0xb4]
mov eax, dword [esp + 0xb4]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x1c], eax
call fcn.1000355e
jmp 0x1002440c
mov esi, dword [ebp + 0x30]
mov dword [esi], 0xffffffeb
cmp dword [esi], 0xb
jne 0x1002440c
mov edi, dword [ebp + 0x2c]
xor ebx, ebx
mov edx, dword [ebp + 0x10]
mov dword [edx], ebx
jmp 0x10023867
mov ecx, dword [edx]
mov eax, dword [edi]
mov dword [eax + ecx*4], 0xd976d993
inc dword [edx]
cmp dword [edx], 3
jl 0x1002385a
inc dword [esi]
cmp dword [esi], 0xb
je 0x10023856
jmp 0x1002440c
cmp byte [ebp + 8], 0
je 0x100243f2
xor ebx, ebx
mov dword [esp + 0x10], 0x68206240
mov dword [esp + 0x34], ebx
lea ecx, [esp + 0xf8]
push 4
call fcn.100034db
xor edi, edi
lea eax, [esp + 0x158]
inc edi
lea ecx, [esp + 0x9c]
mov dword [esp + 0x1a4], edi
push dword [esp + 0x94]
movdqa xmm0, xmmword [0x1006f0d0]
push eax
lea eax, [esp + 0x150]
mov dword [esp + 0xa4], ebx
push eax
push ebx
movdqu xmmword [esp + 0x158], xmm0
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ebx
call fcn.10005cfc
push edi
push 0x58dd
push ebx
lea eax, [esp + 0x104]
mov byte [esp + 0x1b0], 2
push eax
push ebx
push 0x63e
push 0x16b8
push 0x2223
push 0x2e46
lea eax, [esp + 0x134]
mov edx, 0x6ebb
push 0x63d4
push eax
mov ecx, 0xd0b
call fcn.100250d0
add esp, 0x2c
mov byte [esp + 0x32], bl
mov edx, 0x5b75
push 0x5c3c
push 0x29ce
push 0xc19
push edi
push 0x2b56
push 0x36ac
push 0x7453
push ecx
lea ecx, [esp + 0x52]
call fcn.10022b76
add esp, 0x20
mov dword [esp + 0x10], 0xfffffff7
jmp 0x100239ef
mov dword [esp + 0x34], 0xe00f
lea ecx, [esp + 0x114]
mov dword [esp + 0x34], 0x7e307b5c
mov dword [esp + 0x34], 0xa147b80b
push 2
call fcn.100034db
lea eax, [esp + 0xf0]
mov byte [esp + 0x1a4], 3
push eax
lea eax, [esp + 0x118]
push eax
push ecx
call fcn.10023464
add esp, 0xc
lea ecx, [esp + 0x9c]
xor dl, dl
push 0x5ef9
call fcn.10023605
pop ecx
lea ecx, [esp + 0x114]
mov byte [esp + 0x1a4], 2
call fcn.1000355e
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jl 0x1002397c
lea ecx, [esp + 0x9c]
call fcn.1000355e
lea ecx, [esp + 0xf8]
call fcn.1000355e
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x1a4], 4
mov dword [esp + 0x10], 0x60477862
mov dword [esp + 0x18], 0xf9c77509
mov dword [esp + 0xc], 0xe2ff5ff7
mov dword [esp + 0x10], ebx
jmp 0x10023a51
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x24], edi
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edi
jl 0x10023a45
mov dword [esp + 0x10], ebx
jmp 0x10023b37
mov dword [esp + 0xc], 4
lea ecx, [esp + 0x104]
push 3
call fcn.100034db
lea eax, [esp + 0xf4]
mov byte [esp + 0x1a4], 5
push eax
push 0x7f4e
push 0x19a
push ebx
lea ecx, [esp + 0x114]
call fcn.10022b25
mov dword [esp + 0x1c], ebx
add esp, 0x10
cmp dword [esp + 0xc], ebx
jl 0x10023b1f
mov eax, dword [esp + 0xc]
xor edx, edx
mov eax, dword [esp + eax*4 + 0x24]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + eax*4 + 0x24]
mov eax, dword [esp + 0xc]
cmp ecx, eax
mov eax, dword [esp + 0xc]
setg dl
xor ecx, ecx
cmp eax, edx
setle cl
xor edx, edx
imul eax, ecx, 0x4ad3
cmp eax, 0xba20
mov eax, dword [esp + 0x24]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0xc]
setle cl
xor edx, edx
cmp ecx, 0x5ed9a924
setl dl
mov dword [esp + eax*4 + 0x24], edx
xor edx, edx
inc dword [esp + 0x18]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + eax*4 + 0x24]
mov eax, dword [esp + 0x18]
cmp eax, ecx
setne dl
mov dword [esp + 0x24], edx
dec dword [esp + 0xc]
jns 0x10023aaa
lea ecx, [esp + 0x104]
mov byte [esp + 0x1a4], 4
call fcn.1000355e
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 7
jg 0x10023a60
mov eax, dword [esp + 0x18]
mov dword [esp + 0x24], eax
test eax, eax
jne 0x10023b52
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
xor ecx, ecx
cmp eax, edi
setl cl
mov dword [esp + 0x10], ecx
cmp dword [esp + 0x10], 3
je 0x10023b70
mov edx, ebx
cmp dword [esp + 0x18], ebx
je 0x10023b72
mov edx, edi
mov eax, dword [esp + 0x18]
xor ecx, ecx
cmp edx, eax
setle cl
cmp ecx, 0x6d9e96b
jge 0x10023b8b
cmp dword [esp + 0x18], ebx
je 0x10023b99
cmp dword [esp + 0x24], ebx
je 0x10023b99
mov eax, edi
cmp dword [esp + 0x18], ebx
jne 0x10023b9b
mov eax, ebx
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], ebx
je 0x10023d2e
mov dword [esp + 0x2c], 0xf1939efd
mov dword [esp + 0xc], ebx
jmp 0x10023bca
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0xac], 0xc6f7
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 2
jl 0x10023bb7
mov dword [esp + 0xc], ebx
jmp 0x10023d21
mov dword [esp + 0x38], 0x4416da84
mov dword [esp + 0x1c], 0xfffffffd
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x38]
inc dword [esp + 0xb0]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [esp + 0x38]
cmp ecx, eax
mov eax, dword [esp + 0x38]
setg dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp ecx, dword [esp + 0x24]
jge 0x10023cbd
push 2
lea ecx, [esp + 0xd0]
call fcn.100034db
mov byte [esp + 0x1a4], 6
mov dword [esp + 0x14], ebx
jmp 0x10023c60
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0xcc]
or dword [eax + ecx*4], 0xffffffff
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 2
jl 0x10023c4d
push edi
lea eax, [esp + 0xd0]
mov edx, 0x7bdf
push eax
push edi
push 0x6652
push ebx
push 0x57cc
push 0x56cf
push 0x1eea
lea eax, [esp + 0x58]
mov ecx, 0x7d07
push eax
push 0x6689
push 0x49fc
call fcn.100250d0
add esp, 0x2c
mov byte [esp + 0x1a4], 4
lea ecx, [esp + 0xcc]
call fcn.1000355e
jmp 0x10023d1d
mov dword [esp + 0x14], 0xd3351f4a
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0xac]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0xc]
sub edx, eax
sub edx, dword [esp + 0x34]
mov eax, dword [esp + 0x1c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
xor eax, eax
imul ecx, dword [esp + 0x10]
cmp ecx, 0x94b
mov ecx, 0xcabd119e
setle al
dec eax
cmp ecx, eax
sbb eax, eax
inc eax
mov dword [esp + 0x24], eax
dec dword [esp + 0xc]
cmp dword [esp + 0xc], 0xfffffff1
jge 0x10023bda
jmp 0x10023d4a
mov byte [esp + 0x33], bl
cmp byte [esp + 0x33], 0
je 0x10023d4a
push ecx
push 0x63a3
push ecx
xor dl, dl
call fcn.10025c45
add esp, 0xc
mov esi, dword [ebp + 0x24]
mov eax, dword [esi + 0x10]
mov dword [esp + 0x10], eax
mov eax, 0x2d5e48d3
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x14], ebx
jmp 0x10023d7f
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x40], 4
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 2
jl 0x10023d6f
mov dword [esp + 0x5c], ebx
cmp dword [esp + 0x5c], 0xffffffe4
jle 0x10023f8d
push 2
lea ecx, [esp + 0xe8]
call fcn.100034db
mov byte [esp + 0x1a4], 7
mov dword [esp + 0x14], ebx
jmp 0x10023dc7
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0xe4]
mov dword [eax + ecx*4], 0xfffffffa
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 2
jl 0x10023db1
mov esi, dword [esp + 0xe4]
mov dword [esp + 0x2c], esi
mov dword [esi + 4], edi
mov dword [esp + 0xc], 0x7a9a9718
mov dword [esp + 0x1c], 0x8acdd1f6
mov dword [esp + 0xc], ebx
jmp 0x10023f3d
push 4
lea ecx, [esp + 0xdc]
call fcn.100034db
mov byte [esp + 0x1a4], 8
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], ebx
jmp 0x10023e28
mov eax, dword [esp + 0x20]
mov dword [esp + eax*4 + 0x174], 0xffffffff
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 3
jl 0x10023e15
push 0x7d34
lea eax, [esp + 0xdc]
mov ecx, 0x2027
push eax
lea eax, [esp + 0x28]
push eax
push edi
call fcn.10022b25
add esp, 0x10
mov dword [esp + 0x20], ebx
jmp 0x10023e68
mov eax, dword [esp + 0x20]
mov dword [esp + eax*4 + 0xa8], 0xfb95c1f4
inc dword [esp + 0x20]
cmp dword [esp + 0x20], edi
jl 0x10023e55
mov eax, dword [esi + 4]
mov ecx, 0xffff6423
mov eax, dword [esp + eax*4 + 0x40]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + eax*4 + 0x40]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x2c]
mov esi, dword [esi + 4]
mov eax, dword [eax + 4]
mov edx, dword [esp + eax*4 + 0x40]
mov eax, dword [esp + 0x44]
sub ecx, eax
xor eax, eax
add edx, ecx
cmp edx, esi
setle al
xor edx, edx
cmp eax, esi
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x2c]
setge dl
xor ecx, ecx
mov eax, dword [esp + eax*4 + 0x40]
cmp eax, edx
setg cl
mov dword [esp + 0x17c], ecx
xor ecx, ecx
mov eax, dword [esp + 0x68]
mov eax, dword [esp + 0xd8]
mov dword [eax + 8], ebx
mov eax, dword [esp + 0xc]
mov edx, dword [esp + eax*4 + 0x40]
mov eax, dword [esp + 0x68]
test eax, eax
sets cl
add edx, ecx
lea ecx, [esp + 0xd8]
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + eax*4 + 0x40]
mov eax, dword [esp + 0xc]
mov eax, dword [esi + 4]
mov eax, dword [esp + eax*4 + 0x40]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1a4], 7
call fcn.1000355e
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edi
jle 0x10023df5
dec dword [esi + 4]
jns 0x10023ddc
push ebx
push 0x1eee
mov edx, 0x7c92
mov ecx, 0x6574
call fcn.10026c0a
pop ecx
pop ecx
lea ecx, [esp + 0xe4]
mov byte [esp + 0x1a4], 4
call fcn.1000355e
dec dword [esp + 0x5c]
cmp dword [esp + 0x5c], 0xffffffe4
jg 0x10023d95
mov esi, dword [ebp + 0x24]
cmp dword [esi + 0x14], 8
mov eax, dword [ebp + 0x28]
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x34], ecx
jb 0x10023fa1
mov ecx, dword [esi]
jmp 0x10023fa3
mov ecx, esi
push dword [esi + 0x10]
push ebx
push ecx
mov ecx, eax
call fcn.10003cd0
mov ecx, eax
mov eax, ebx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x4c], eax
cmp eax, dword [esp + 0x34]
jae 0x10024328
cmp ecx, 0xffffffff
je 0x100240f3
cmp ecx, eax
je 0x100240b8
mov dword [esp + 0x3c], 0xba33
lea ecx, [esp + 0xc0]
mov dword [esp + 0x98], ebx
push 3
call fcn.100034db
lea eax, [esp + 0x58]
mov byte [esp + 0x1a4], 0xd
push eax
push ecx
push edi
push ecx
lea eax, [esp + 0xd0]
mov dword [esp + 0x58], 0xfdadf860
push 0x5fef
push eax
call fcn.10022a81
lea eax, [esp + 0x54]
push eax
push 0x73cc
lea eax, [esp + 0xe0]
push eax
lea eax, [esp + 0xbc]
push 0x4d0c
push eax
lea edx, [esp + 0x74]
call fcn.10023648
add esp, 0x2c
lea eax, [esp + 0x48]
mov edx, 0x160d
mov ecx, 0x1e46
push eax
push ebx
push edi
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0xd0]
push eax
push edi
push 0x7033
push 0x1b00
call fcn.10024e2d
add esp, 0x20
mov byte [esp + 0x1a4], 4
lea ecx, [esp + 0xc0]
call fcn.1000355e
mov edx, dword [ebp + 0x28]
lea eax, [esp + 0x4c]
push eax
push 0x1f4
push ecx
lea eax, [esp + 0x5c]
push 0x67ff
push eax
lea ecx, [esp + 0x8c]
call fcn.100248a9
mov ecx, dword [esp + 0x64]
add esp, 0x14
mov eax, dword [esp + 0x10]
add eax, ecx
cmp dword [esi + 0x14], 8
mov dword [esp + 0x4c], eax
jb 0x100240cc
mov ecx, dword [esi]
jmp 0x100240ce
mov ecx, esi
push dword [esi + 0x10]
push eax
push ecx
mov ecx, dword [ebp + 0x28]
call fcn.10003cd0
mov ecx, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x50], ecx
cmp eax, 0xffffffff
jne 0x10023fbb
jmp 0x10024328
push ecx
push ecx
push dword [ebp + 0x28]
lea eax, [esp + 0x84]
push eax
push 0x32a3
push edi
push 0x369a
lea eax, [esp + 0x68]
push eax
push 0x147a
call fcn.100248f1
movdqa xmm0, xmmword [0x1006f0c0]
lea eax, [esp + 0x16c]
add esp, 0x24
mov dword [esp + 0x14], 3
lea ecx, [esp + 0x6c]
mov dword [esp + 0x6c], ebx
movdqu xmmword [esp + 0x138], xmm0
mov dword [esp + 0x70], ebx
push dword [esp + 0x58]
mov dword [esp + 0x78], ebx
push eax
lea eax, [esp + 0x140]
push eax
push ebx
call fcn.10005cfc
mov byte [esp + 0x1a4], 9
mov dword [esp + 0x14], 0xffffffe6
jmp 0x1002430c
push ebx
lea eax, [esp + 0x70]
mov dword [esp + 0x2c], ebx
push eax
push ecx
lea edx, [esp + 0x34]
call fcn.10023273
mov dword [esp + 0x38], 0x7982
add esp, 0xc
cmp dword [esp + 0x2c], 0x7b78
jle 0x100241ef
mov esi, ebx
mov eax, ebx
mov dword [esp + 0x1c], ebx
add eax, esi
lea ecx, [esp + 0x180]
cdq
push edx
push eax
call fcn.10001a94
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100241c1
mov eax, dword [eax]
push eax
call fcn.1004840f
pop ecx
push ebx
push edi
lea ecx, [esp + 0x188]
call fcn.10003868
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, 0x2dc5
jl 0x100241a6
inc esi
cmp esi, 0x60f8
jl 0x100241a0
mov dword [esp + 0x28], 3
cmp dword [esp + 0x28], ebx
jl 0x100242e8
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x88]
push dword [esp + 0x58]
movdqa xmm0, xmmword [0x1006f0b0]
lea eax, [esp + 0x16c]
push eax
lea eax, [esp + 0x160]
mov dword [esp + 0x90], ebx
push eax
push ebx
movdqu xmmword [esp + 0x168], xmm0
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
call fcn.10005cfc
mov byte [esp + 0x1a4], 0xa
mov esi, dword [esp + 0x88]
mov dword [esi + 0xc], 3
mov dword [esp + 0x1c], 0xc9cd49fc
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x6c]
push edi
push 0x390
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x30]
mov eax, dword [esi + 0xc]
mov ecx, dword [esp + 0x74]
mov eax, dword [ecx + eax*4]
sub eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x24]
mov ecx, dword [esi + 0xc]
add edx, eax
mov eax, dword [esp + 0x74]
push ecx
mov dword [eax + ecx*4], edx
mov edx, 0x742b
call fcn.10023273
add esp, 0xc
dec dword [esi + 0xc]
jns 0x10024262
push ecx
push 0x4136
mov edx, 0x7017
mov ecx, 0x696c
call fcn.100248d6
pop ecx
pop ecx
lea ecx, [esp + 0x88]
mov byte [esp + 0x1a4], 9
call fcn.1000355e
dec dword [esp + 0x28]
jns 0x10024201
cmp dword [esp + 0x2c], 0x7874
jge 0x100242fd
push str.gvti_iohey_bktavito_krot_xymbt_hcqdedw_ivp
call fcn.1004840f
pop ecx
mov dword [esp + 0x1a4], 9
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0x12
jne 0x10024175
lea ecx, [esp + 0x6c]
mov byte [esp + 0x1a4], 4
call fcn.1000355e
mov dword [esp + 0x18], 0xc75b57fd
mov dword [esp + 0x18], ebx
jmp 0x100243cf
mov dword [esp + 0x14], 0x82bd7b1c
mov dword [esp + 0xc], ebx
jmp 0x10024357
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x54], 0x49dfcf09
inc dword [esp + 0xc]
cmp dword [esp + 0xc], edi
jl 0x10024347
mov dword [esp + 0xc], ebx
jmp 0x10024376
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x168], 0xfffffff7
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x10024363
mov dword [esp + 0x14], 0xffffffe8
jmp 0x100243c4
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x10], ebx
cmp dword [esp + 0x10], ebx
jl 0x100243b9
mov eax, dword [esp + 0x10]
cmp dword [esp + eax*4 + 0x54], ebx
jne 0x100243b9
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 + 0x54]
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x54], ecx
dec dword [esp + 0x10]
jns 0x10024399
mov eax, dword [esp + 0x170]
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0x10
jg 0x10024387
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 0xa
je 0x10024339
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x78]
push eax
call fcn.10027288
lea ecx, [esp + 0x78]
call fcn.100277bb
jmp 0x1002440c
mov eax, dword [ebp + 0x18]
cmp byte [eax], 0
je 0x1002440c
push 0x12e7
mov edx, 0x102e
xor cl, cl
call fcn.10025bda
pop ecx
mov ecx, dword [esp + 0x19c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret