Function at 0x41bbd0
Capabilities:
Get thread local storage value
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, dword [ebp + 0x14]
sub esp, 0xe34
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 8]
fld dword [esi + 8]
push edi
mov edi, dword [ebp + 0xc]
mov ecx, dword [edi]
push eax
push ebx
push edi
push ecx
lea edx, [esp + 0x87]
fstp dword [esp]
push edx
mov dword [eax], ecx
call fcn.00416380
add esp, 0x14
cmp byte [eax], 0
jne 0x41c74c
mov eax, dword [edi]
lea ecx, [esp + 0xec]
lea edx, [esp + 0xc0]
push edx
mov dword [esp + 0xc0], eax
mov eax, ecx
push eax
push ebx
push edi
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf8], reloc.WSOCK32.dll_accept
mov dword [esp + 0xf4], 1
call fcn.00416890
fld dword [esi + 0x20]
mov ecx, dword [esp + 0xd0]
fstp dword [esp + 0xe4]
mov eax, dword [esp + 0xd8]
mov edx, dword [esp + 0xd4]
mov dword [esp + 0xb0], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0xbc], ecx
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx + 8]
mov dword [esp + 0xb8], eax
mov eax, dword [edi + 8]
lea ecx, [eax + ecx + 2]
mov dword [esp + 0xb4], edx
lea edx, [esp + 0x11c]
xor ebx, ebx
lea eax, [esp + 0x64c]
mov dword [esp + 0x7c], ecx
lea ecx, [ecx + ecx*2]
mov dword [esp + 0x110], edx
mov dword [esp + 0x640], eax
add esp, 0x10
cmp ecx, ebx
mov edx, 0x80000040
mov eax, 0x80000080
lea esi, [esp + 0xe0]
mov dword [esp + 0x104], ebx
mov dword [esp + 0x108], edx
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x634], ebx
mov dword [esp + 0x638], eax
mov dword [esp + 0x4c], esi
mov dword [esp + 0x7c], ebx
jle 0x41c5fc
lea esp, [esp]
mov ecx, dword [esp + 0x7c]
cmp ecx, dword [esp + 0x6c]
jle 0x41bd43
fld dword [esp + 0xd4]
fmul qword [0x4b3448]
fstp dword [esp + 0xd4]
fld1
fcomp dword [esp + 0xd4]
fnstsw ax
test ah, 5
jp 0x41bd43
add dword [esp + 0x6c], 1
mov edx, dword [0x4c6060]
push edx
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov esi, dword [eax + 0x20]
lea ecx, [esi + 0x150]
cmp ecx, dword [eax + 0x2c]
ja 0x41bd67
mov dword [eax + 0x20], ecx
mov dword [esp + 0x48], esi
jmp 0x41bd7b
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
push 0x150
call eax
mov dword [esp + 0x48], eax
mov esi, eax
cmp esi, ebx
je 0x41bd8e
lea ecx, [esi + 0xc]
mov dword [esi], ecx
mov dword [esi + 4], ebx
mov dword [esi + 8], reloc.WSOCK32.dll_recv
mov edx, dword [esp + 0x108]
and edx, 0x3fffffff
cmp dword [esp + 0x104], edx
jne 0x41bdb6
lea eax, [esp + 0x100]
push 4
push eax
call fcn.00402730
add esp, 8
mov edx, dword [esp + 0x104]
mov ecx, dword [esp + 0x100]
mov eax, dword [esp + 0x4c]
mov dword [ecx + edx*4], esi
add dword [esp + 0x104], 1
cmp dword [eax + 4], ebx
mov dword [esp + 0xb8], ebx
jle 0x41c5a4
mov dword [esp + 0x78], ebx
jmp 0x41bdf0
mov ecx, dword [esp + 0x4c]
mov esi, dword [ecx]
add esi, dword [esp + 0x78]
mov dword [esp + 0x424], ebx
mov dword [esp + 0x214], ebx
mov eax, 0x80000040
mov dword [esp + 0x428], eax
mov dword [esp + 0x218], eax
lea edx, [esp + 0x42c]
mov dword [esp + 0x420], edx
lea ecx, [esp + 0x21c]
mov dword [esp + 0x210], ecx
mov eax, dword [esi]
mov edx, dword [esi + 4]
movzx edi, word [eax]
movzx ebx, word [edx]
mov eax, dword [esp + 0xbc]
shl edi, 4
add edi, dword [esp + 0xbc]
shl ebx, 4
add ebx, eax
cmp dword [esi + 8], 0
je 0x41c412
mov edx, dword [esi + 8]
mov ecx, dword [edx]
mov edx, dword [edx + 4]
movzx ecx, word [ecx]
movzx edx, word [edx]
shl ecx, 4
shl edx, 4
add ecx, eax
add edx, eax
cmp ecx, edi
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x70], ebx
je 0x41be8e
mov dword [esp + 0x70], edi
fld dword [edx]
fsub dword [ecx]
fstp dword [esp + 0x50]
fld dword [edx + 4]
fsub dword [ecx + 4]
fstp dword [esp + 0x54]
fld dword [edx + 8]
fsub dword [ecx + 8]
fstp dword [esp + 0x58]
fld dword [esp + 0x50]
fld dword [esp + 0x54]
fld dword [esp + 0x58]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x1c]
fldz
fld st(0)
fld dword [esp + 0x1c]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x41bf00
fstp st(1)
call fcn.0042eb10
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
mov edx, dword [esp + 0xc]
fld1
mov ecx, dword [esp + 0x10]
fdivrp st(1)
fstp dword [esp + 0x1c]
fldz
jmp 0x41bf06
fstp st(0)
fst dword [esp + 0x1c]
fld dword [esp + 0x1c]
mov eax, dword [esp + 0x70]
fld st(0)
fmul dword [esp + 0x50]
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fmul st(1)
fstp dword [esp + 0x54]
fmul dword [esp + 0x58]
fstp dword [esp + 0x58]
fld dword [eax]
fsub dword [ecx]
fstp dword [esp + 0x30]
fld dword [eax + 4]
fsub dword [ecx + 4]
fstp dword [esp + 0x34]
fld dword [eax + 8]
fsub dword [ecx + 8]
fstp dword [esp + 0x38]
fld dword [esp + 0x30]
fld dword [esp + 0x34]
fld dword [esp + 0x38]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld st(0)
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x41bf96
fstp st(1)
call fcn.0042eb10
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
mov edx, dword [esp + 0xc]
fld1
fdivrp st(1)
fstp dword [esp + 0x1c]
fldz
jmp 0x41bf9c
fstp st(0)
fst dword [esp + 0x1c]
fld dword [esp + 0x1c]
fld st(0)
fmul dword [esp + 0x30]
fstp dword [esp + 0x30]
fld dword [esp + 0x34]
fmul st(1)
fstp dword [esp + 0x34]
fmul dword [esp + 0x38]
fstp dword [esp + 0x38]
fld dword [esp + 0x38]
fld st(0)
fld dword [esp + 0x54]
fld st(0)
fmulp st(2)
fld dword [esp + 0x34]
fld st(0)
fld dword [esp + 0x58]
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0x20]
fld st(2)
fmul dword [esp + 0x30]
fld dword [esp + 0x50]
fld st(0)
fmulp st(6)
fxch st(1)
fsubrp st(5)
fxch st(4)
fstp dword [esp + 0x24]
fmul st(3)
fld st(1)
fmul dword [esp + 0x30]
fsubp st(1)
fstp dword [esp + 0x28]
fxch st(3)
fst dword [esp + 0x2c]
fld dword [esp + 0x20]
fld dword [esp + 0x24]
fld dword [esp + 0x28]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fcomp dword [0x4b333c]
fnstsw ax
test ah, 5
jp 0x41c398
mov eax, dword [esp + 0x70]
fld dword [eax]
fsub dword [edx]
fstp dword [esp + 0x30]
fld dword [eax + 4]
fsub dword [edx + 4]
fstp dword [esp + 0x34]
fld dword [eax + 8]
fsub dword [edx + 8]
fstp dword [esp + 0x38]
fld dword [esp + 0x30]
fld dword [esp + 0x34]
fld dword [esp + 0x38]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld st(0)
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x41c0bf
fstp st(4)
fstp st(1)
fstp st(1)
fstp st(0)
call fcn.0042eb10
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld1
fdivrp st(1)
fstp dword [esp + 0xc]
fld dword [esp + 0x50]
fldz
fld dword [esp + 0x58]
fld dword [esp + 0x54]
jmp 0x41c0c9
fstp st(0)
fst dword [esp + 0xc]
fxch st(2)
fxch st(3)
fld dword [esp + 0xc]
fld st(0)
fmul dword [esp + 0x30]
fstp dword [esp + 0x30]
fld dword [esp + 0x34]
fmul st(1)
fstp dword [esp + 0x34]
fmul dword [esp + 0x38]
fstp dword [esp + 0x38]
fld dword [esp + 0x38]
fld st(0)
fmul st(2)
fld dword [esp + 0x34]
fmul st(4)
fsubp st(1)
fstp dword [esp + 0x20]
fld st(2)
fmul dword [esp + 0x30]
fld st(1)
fmul st(6)
fsubp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x34]
fmul st(5)
fld st(2)
fmul dword [esp + 0x30]
fsubp st(1)
fstp dword [esp + 0x28]
fxch st(3)
fst dword [esp + 0x2c]
fld dword [esp + 0x20]
fld dword [esp + 0x24]
fld dword [esp + 0x28]
fstp qword [esp + 0x10]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
fld qword [esp + 0x10]
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld dword [0x4b333c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x41c38c
fld dword [esp + 0x30]
fadd st(6)
fstp dword [esp + 0x90]
fld dword [esp + 0x34]
fadd st(3)
fstp dword [esp + 0x94]
fld st(4)
fadd st(4)
fstp dword [esp + 0x98]
fld dword [esp + 0x30]
fsubp st(6)
fxch st(5)
fstp dword [esp + 0x80]
fld dword [esp + 0x34]
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x84]
fxch st(1)
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x88]
fld dword [esp + 0x80]
fld dword [esp + 0x84]
fld dword [esp + 0x88]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x1c]
fxch st(1)
fcom dword [esp + 0x1c]
fnstsw ax
test ah, 0x41
je 0x41c35c
fld dword [esp + 0x90]
fld dword [esp + 0x94]
fld dword [esp + 0x98]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jnp 0x41c35c
fstp dword [esp + 0x10]
fld st(0)
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x41c258
fstp st(1)
call fcn.0042eb10
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld1
fdivrp st(1)
fstp dword [esp + 0xc]
fldz
jmp 0x41c25e
fstp st(0)
fst dword [esp + 0xc]
fld dword [esp + 0xc]
fld st(0)
fmul dword [esp + 0x90]
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fmul st(1)
fstp dword [esp + 0x94]
fmul dword [esp + 0x98]
fstp dword [esp + 0x98]
fld dword [esp + 0x1c]
fstp dword [esp + 0x10]
fld st(0)
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x41c2c4
fstp st(1)
call fcn.0042eb10
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld1
fdivrp st(1)
fstp dword [esp + 0xc]
fldz
jmp 0x41c2ca
fstp st(0)
fst dword [esp + 0xc]
fld dword [esp + 0xc]
fld st(0)
fmul dword [esp + 0x80]
fstp dword [esp + 0x80]
fld dword [esp + 0x84]
fmul st(1)
fstp dword [esp + 0x84]
fmul dword [esp + 0x88]
fstp dword [esp + 0x88]
fld dword [esp + 0x84]
fld st(0)
fld dword [esp + 0x98]
fld st(0)
fmulp st(2)
fld dword [esp + 0x88]
fld st(0)
fld dword [esp + 0x94]
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x90]
fld st(0)
fmulp st(2)
fld dword [esp + 0x80]
fld st(0)
fmulp st(4)
fxch st(2)
fsubrp st(3)
fxch st(2)
fstp dword [esp + 0x24]
fmulp st(2)
fmulp st(2)
fsubrp st(1)
fstp dword [esp + 0x28]
fst dword [esp + 0x2c]
jmp 0x41c39e
fstp st(0)
fld dword [esp + 0xa0]
fstp dword [esp + 0x20]
fld dword [esp + 0xa4]
fstp dword [esp + 0x24]
fld dword [esp + 0xa8]
fstp dword [esp + 0x28]
fld dword [esp + 0xac]
fstp dword [esp + 0x2c]
jmp 0x41c39e
fstp st(2)
fstp st(2)
fstp st(3)
fstp st(1)
fstp st(1)
jmp 0x41c39e
fstp st(3)
fstp st(0)
fstp st(0)
fld dword [esp + 0x20]
fld dword [esp + 0x24]
fld dword [esp + 0x28]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x10]
fld st(0)
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x41c3e4
fstp st(1)
call fcn.0042eb10
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld1
fdivrp st(1)
jmp 0x41c3e6
fstp st(0)
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fld st(0)
fmul dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fmul st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fmul st(1)
fstp dword [esp + 0x28]
fmul dword [esp + 0x2c]
jmp 0x41c43a
fld dword [esp + 0xc0]
fstp dword [esp + 0x20]
fld dword [esp + 0xc4]
fstp dword [esp + 0x24]
fld dword [esp + 0xc8]
fstp dword [esp + 0x28]
fld dword [esp + 0xcc]
movzx ecx, word [esi + 0xc]
fstp dword [esp + 0x2c]
fld dword [esp + 0x20]
lea eax, [esp + 0x420]
push eax
fstp dword [esp + 0xa4]
mov eax, dword [esi]
fld dword [esp + 0x28]
push ebx
fstp dword [esp + 0xac]
fld dword [esp + 0x30]
push edi
push eax
fstp dword [esp + 0xb8]
mov eax, dword [ebp + 0xc]
fld dword [esp + 0x3c]
push ecx
fstp dword [esp + 0xc0]
mov ecx, dword [ebp + 8]
lea edx, [esp + 0x34]
push edx
push eax
push ecx
call fcn.0041b960
mov eax, dword [esi + 4]
movzx ecx, word [esi + 0xc]
lea edx, [esp + 0x230]
push edx
push ebx
push edi
push eax
mov eax, dword [ebp + 0x10]
push ecx
mov ecx, dword [ebp + 8]
lea edx, [esp + 0x54]
push edx
push eax
push ecx
call fcn.0041b960
movzx ecx, word [esi + 0xc]
add esp, 0x40
lea edx, [esp + 0x210]
push edx
lea eax, [esp + 0x424]
push eax
mov eax, dword [ebp + 0x10]
push ebx
push edi
push esi
push ecx
mov ecx, dword [eax]
lea edx, [esp + 0x38]
push edx
mov edx, dword [ebp + 8]
push ecx
push edx
call fcn.0041b310
mov eax, dword [esp + 0x6c]
push eax
lea ecx, [esp + 0x238]
push ecx
lea edx, [esp + 0x44c]
push edx
lea eax, [esp + 0x104]
push esi
push eax
call fcn.00417540
mov eax, dword [esp + 0x250]
add esp, 0x38
test eax, eax
js 0x41c540
mov ecx, dword [0x4c6060]
and eax, 0x3fffffff
push ecx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, dword [esp + 0x210]
push 0x17
lea edx, [esi*8]
push edx
push ecx
mov ecx, eax
call fcn.004023e0
mov eax, dword [esp + 0x428]
test eax, eax
js 0x41c578
mov edx, dword [0x4c6060]
and eax, 0x3fffffff
push edx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edx, dword [esp + 0x420]
push 0x17
lea ecx, [esi*8]
push ecx
push edx
mov ecx, eax
call fcn.004023e0
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0x4c]
add dword [esp + 0x78], 0x14
add eax, 1
xor ebx, ebx
cmp eax, dword [ecx + 4]
mov dword [esp + 0xb8], eax
jl 0x41bdf0
mov esi, dword [esp + 0x48]
mov edi, dword [ebp + 0xc]
mov eax, dword [esi + 4]
cmp eax, 1
mov dword [esp + 0x4c], esi
jle 0x41c5c5
mov edx, dword [esi]
push 0x415e50
add eax, 0xffffffff
push eax
push ebx
push edx
call fcn.0041d290
add esp, 0x10
mov ecx, dword [ebp + 0x10]
lea eax, [esp + 0x630]
push eax
push esi
push ecx
push edi
call fcn.0041ba70
add esp, 0x10
cmp dword [esp + 0x634], ebx
jne 0x41c5ee
add dword [esp + 0x7c], 1
jmp 0x41bd10
mov edx, dword [esp + 0x108]
mov eax, dword [esp + 0x638]
mov ebx, dword [esp + 0x104]
add ebx, 0xffffffff
js 0x41c67f
mov edx, dword [esp + 0x100]
mov edi, dword [edx + ebx*4]
mov eax, dword [edi + 8]
test eax, eax
js 0x41c640
and eax, 0x3fffffff
mov esi, eax
mov eax, dword [0x4c6060]
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov edx, dword [edi]
lea ecx, [esi + esi*4]
add ecx, ecx
push 0x17
add ecx, ecx
push ecx
push edx
mov ecx, eax
call fcn.004023e0
mov ecx, dword [0x4c6060]
mov eax, dword [esp + 0x100]
mov esi, dword [eax + ebx*4]
push ecx
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
cmp esi, dword [eax + 0x28]
mov dword [eax + 0x20], esi
jne 0x41c669
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x18]
push esi
call eax
sub ebx, 1
jns 0x41c608
mov edx, dword [esp + 0x108]
mov eax, dword [esp + 0x638]
mov edi, dword [ebp + 0xc]
cmp dword [esp + 0x634], 0
mov dword [esp + 0x104], 0
je 0x41c755
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
push ecx
lea edx, [esp + 0x634]
push edx
push eax
push edi
call fcn.0041ad10
mov esi, dword [esp + 0x648]
mov edi, dword [sym.imp.KERNEL32.dll_TlsGetValue]
add esp, 0x10
test esi, esi
js 0x41c6e6
mov ecx, dword [0x4c6060]
push ecx
and esi, 0x3fffffff
call edi
mov edx, dword [esp + 0x630]
push 0x17
shl esi, 4
push esi
push edx
mov ecx, eax
call fcn.004023e0
mov eax, dword [esp + 0x108]
test eax, eax
js 0x41c719
and eax, 0x3fffffff
mov esi, eax
mov eax, dword [0x4c6060]
push eax
call edi
mov edx, dword [esp + 0x100]
push 0x17
lea ecx, [esi*4]
push ecx
push edx
mov ecx, eax
call fcn.004023e0
mov eax, dword [esp + 0xe8]
test eax, eax
js 0x41c74c
and eax, 0x3fffffff
mov esi, eax
mov eax, dword [0x4c6060]
push eax
call edi
mov edx, dword [esp + 0xe0]
lea ecx, [esi + esi*4]
add ecx, ecx
push 0x17
add ecx, ecx
push ecx
push edx
mov ecx, eax
call fcn.004023e0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test eax, eax
mov edi, dword [sym.imp.KERNEL32.dll_TlsGetValue]
js 0x41c78a
and eax, 0x3fffffff
mov esi, eax
mov eax, dword [0x4c6060]
push eax
call edi
mov ecx, dword [esp + 0x630]
push 0x17
shl esi, 4
push esi
push ecx
mov ecx, eax
call fcn.004023e0
mov edx, dword [esp + 0x108]
test edx, edx
js 0x41c7b8
and edx, 0x3fffffff
mov esi, edx
mov edx, dword [0x4c6060]
push edx
call edi
mov edx, dword [esp + 0x100]
push 0x17
lea ecx, [esi*4]
push ecx
push edx
mov ecx, eax
call fcn.004023e0
mov eax, dword [esp + 0xe8]
test eax, eax
js 0x41c7eb
and eax, 0x3fffffff
mov esi, eax
mov eax, dword [0x4c6060]
push eax
call edi
mov edx, dword [esp + 0xe0]
lea ecx, [esi + esi*4]
add ecx, ecx
push 0x17
add ecx, ecx
push ecx
push edx
mov ecx, eax
call fcn.004023e0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret