Function at 0x1003aac4
Capabilities:
Check for time delay via gettickcount
Check http status code

Disassembly:
mov eax, 0x1008158e
call fcn.1005ab48
sub esp, 0x240
push esi
push edi
push str.HookedRakClientInterface::Send_BitStream_
call fcn.10058d45
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x11]
pop ecx
push 1
push 8
push eax
mov ecx, edi
call fcn.10001831
cmp byte [ebp - 0x11], 0xcf
mov dword [ebp - 0x38], 3
jne 0x1003b254
mov ecx, edi
call fcn.100018f1
push 1
push 8
lea eax, [ebp - 0x11]
mov ecx, edi
push eax
call fcn.10001831
push 0x44
lea eax, [ebp - 0xfc]
mov ecx, edi
push eax
call fcn.100017e3
mov ecx, dword [0x1015c858]
cmp dword [ecx + 0x3e], 0
je 0x1003abec
cmp dword [ecx + 0x4a], 0xffffffff
je 0x1003abec
test byte [ebp - 0xf8], 0x84
je 0x1003abec
push 0
push 0xffffffffffffffff
call fcn.1002ad9c
mov esi, eax
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.100410d0
lea ecx, [ebp - 0x28]
push ecx
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0xb8]
push eax
mov eax, dword [esi + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
movss xmm0, dword [ebp - 0x28]
lea eax, [ebp - 0xde]
subss xmm0, dword [ebp - 0xb8]
add esp, 0x1c
movss dword [ebp - 0x18], xmm0
movss xmm0, dword [ebp - 0x24]
subss xmm0, dword [ebp - 0xb4]
fld dword [ebp - 0x18]
push eax
lea eax, [ebp - 0xea]
push eax
movss dword [ebp - 0x34], xmm0
fld dword [ebp - 0x34]
fpatan
push ecx
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
xorps xmm0, xmmword [0x100833e0]
movss dword [esp], xmm0
call fcn.10008816
mov ecx, dword [0x1015c858]
add esp, 0xc
cmp byte [ecx + 0x253e0], 0
mov esi, 0x7d0
je 0x1003ac19
call fcn.100699e0
cdq
idiv esi
mov ecx, dword [0x1015c858]
mov word [ebp - 0xbe], dx
mov dword [ebp - 0xc2], 0x41700000
xor esi, esi
cmp dword [ecx + 0x90], esi
je 0x1003ad4b
push ecx
push ecx
and dword [esp + 4], esi
mov byte [ebp - 0x70], 3
mov dword [esp], 0x40200000
call fcn.100089ae
fstp dword [ebp - 0x55]
mov dword [esp + 4], 0x3e99999a
mov dword [esp], 0x42040000
call fcn.100089ae
fstp dword [ebp - 0x51]
mov dword [esp + 4], 0x3dcccccd
mov dword [esp], 0x3e4ccccd
call fcn.100089ae
pop ecx
pop ecx
mov ecx, dword [0x101b97a4]
fstp dword [ebp - 0x4d]
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
movss xmm0, dword [eax]
movss dword [ebp - 0x6d], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x69], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
lea ecx, [ebp - 0x24c]
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x65], xmm0
mov byte [ebp - 0x49], 0x1f
call fcn.1000172d
push 1
push 8
lea eax, [ebp - 0x10]
mov dword [ebp - 4], esi
push eax
lea ecx, [ebp - 0x24c]
mov byte [ebp - 0x10], 0xce
call fcn.100019a3
push 0x28
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x24c]
call fcn.10001952
mov ecx, dword [0x101a5528]
lea eax, [ebp - 0x24c]
push esi
push 7
push 1
push eax
call fcn.100409a6
mov ecx, dword [0x101a5528]
call fcn.10040bfd
push str.2125a6___808080Log_Sended_
call fcn.10040e13
or dword [ebp - 4], 0xffffffff
pop ecx
lea ecx, [ebp - 0x24c]
call fcn.10001748
mov ecx, dword [0x1015c858]
cmp byte [ecx + 0xd0], 0
je 0x1003adf3
movss xmm0, dword [ebp - 0xe2]
addss xmm0, dword [0x10091140]
push 0xb
pop eax
mov word [ebp - 0xfa], ax
lea eax, [ebp - 0x28]
push eax
mov eax, dword [0x101a553c]
mov dword [ebp - 0xd6], 0x411ccccd
mov dword [ebp - 0xd2], 0x411ccccd
mov dword [ebp - 0xce], 0x411ccccd
movss dword [ebp - 0xe2], xmm0
mov ecx, dword [ecx + 0xd1]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x28]
push esi
push eax
call fcn.1002f635
mov eax, dword [0x101a553c]
add esp, 0x10
mov eax, dword [eax + 0x1e]
mov dword [eax + 0x60], 0x411ccccd
mov dword [eax + 0x64], 0x411ccccd
mov dword [eax + 0x68], 0x411ccccd
mov ecx, dword [0x1015c858]
movzx eax, byte [ebp - 0xd8]
xor edx, edx
cmp dword [ecx + 0x10d], esi
cmovne eax, edx
mov byte [ebp - 0xd8], al
cmp dword [ecx + 0x14], edx
je 0x1003ae8e
mov eax, dword [ecx + 0xcc]
cmp eax, 1
jne 0x1003ae61
movss xmm0, dword [ebp - 0xe2]
subss xmm0, dword [0x10088c30]
mov dword [ebp - 0xd6], 0x41180000
mov dword [ebp - 0xd2], 0x41180000
mov dword [ebp - 0xce], 0x41180000
mov dword [ebp - 0xbc], 0x11040191
movss dword [ebp - 0xe2], xmm0
mov eax, dword [ecx + 0xcc]
cmp eax, 2
jne 0x1003ae8e
push 0x60
pop eax
mov dword [ebp - 0xd6], 0x3dcccccd
mov dword [ebp - 0xd2], 0x3dcccccd
mov dword [ebp - 0xce], 0x3dcccccd
mov word [ebp - 0xbc], ax
cmp dword [ecx + 0x98], edx
je 0x1003aed2
push 1
call fcn.1003fbf6
pop ecx
test eax, eax
je 0x1003aecc
mov eax, dword [0x101a553c]
push 9
mov eax, dword [eax + 0x1e]
movzx eax, byte [eax + 0x18d]
push eax
mov eax, dword [0x1015c858]
push ecx
mov dword [esp], 0x4028f5c3
push dword [eax + 0x4a]
call fcn.1003c315
add esp, 0x10
mov ecx, dword [0x1015c858]
cmp dword [ecx + 0x6b], 0
jne 0x1003c2b2
cmp dword [ecx + 0x7b], 0
je 0x1003af06
call fcn.100699e0
mov ecx, 0x7d0
cdq
idiv ecx
mov ecx, dword [0x1015c858]
mov word [ebp - 0xbe], dx
mov dword [ebp - 0xc2], 0x41700000
cmp dword [ecx + 0x88fd], 0
je 0x1003af6a
push 1
call fcn.1003fbf6
pop ecx
test eax, eax
je 0x1003af4c
lea eax, [ebp - 0x28]
push eax
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
pop ecx
pop ecx
jmp 0x1003af64
movss xmm0, dword [ebp - 0xee]
subss xmm0, dword [0x10091174]
movss dword [ebp - 0xee], xmm0
mov ecx, dword [0x1015c858]
cmp dword [ecx + 0x6f], 0
push 0x20
pop esi
je 0x1003b05e
test byte [ebp - 0xf8], 4
jne 0x1003b05e
push 0
push 0xffffffffffffffff
call fcn.1002ad9c
pop ecx
pop ecx
lea ecx, [ebp - 0x24c]
call fcn.1000172d
lea ecx, [ebp - 0x24c]
mov dword [ebp - 4], 1
call fcn.10001923
and dword [ebp - 0x18], 0
lea eax, [ebp - 0x18]
push 1
push 0x10
push eax
lea ecx, [ebp - 0x24c]
call fcn.100019a3
movsd xmm0, qword [0x10091138]
lea eax, [ebp - 0x30]
push 1
push 0x40
push eax
lea ecx, [ebp - 0x24c]
movsd qword [ebp - 0x30], xmm0
call fcn.100019a3
push 1
push esi
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x36
push eax
lea ecx, [ebp - 0x24c]
call fcn.100019a3
push 1
push esi
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 3
push eax
lea ecx, [ebp - 0x24c]
call fcn.100019a3
mov ecx, dword [0x101a5528]
lea eax, [ebp - 0x24c]
push 0
push 0
push 0xa
push 1
push eax
push 0x73
call fcn.1004097d
movss xmm0, dword [ebp - 0xee]
lea ecx, [ebp - 0x24c]
addss xmm0, dword [0x10091154]
or dword [ebp - 4], 0xffffffff
movss dword [ebp - 0xee], xmm0
call fcn.10001748
mov ecx, dword [0x1015c858]
cmp dword [ecx + 0xf1], 0
je 0x1003b071
mov dword [ebp - 0xbc], 0x110403d1
cmp dword [ecx + 0x77], 0
je 0x1003b0c6
mov eax, dword [0x101a553c]
mov edx, 0x6a5
mov eax, dword [eax + 0x1e]
cmp word [eax + 0x7a], dx
jne 0x1003b0c6
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x451ba9c3
push 0
push eax
mov dword [ebp - 0x24], 0xc4d06e66
mov dword [ebp - 0x20], 0x415570a4
call fcn.1002f635
push str.2125a6___808080You_fell_into_the_wounded_and_the_Wounded_Tp_automatically_saved_you.
call fcn.10040e13
mov eax, dword [0x1015c858]
add esp, 0xc
and dword [eax + 0x77], 0
mov ecx, dword [0x1015c858]
cmp dword [ecx + 0x73], 0
je 0x1003b1b3
test byte [ebp - 0xf8], 0x80
jne 0x1003b1b3
lea ecx, [ebp - 0x24c]
call fcn.1000172d
lea ecx, [ebp - 0x24c]
mov dword [ebp - 4], 2
call fcn.10001923
and dword [ebp - 0x18], 0
lea eax, [ebp - 0x18]
push 1
push 0x10
push eax
lea ecx, [ebp - 0x24c]
call fcn.100019a3
movsd xmm0, qword [0x10091138]
lea eax, [ebp - 0x30]
push 1
push 0x40
push eax
lea ecx, [ebp - 0x24c]
movsd qword [ebp - 0x30], xmm0
call fcn.100019a3
push 1
push esi
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x36
push eax
lea ecx, [ebp - 0x24c]
call fcn.100019a3
push 1
push esi
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 3
push eax
lea ecx, [ebp - 0x24c]
call fcn.100019a3
mov ecx, dword [0x101a5528]
lea eax, [ebp - 0x24c]
push 0
push 0
push 0xa
push 1
push eax
push 0x73
call fcn.1004097d
movss xmm0, dword [ebp - 0xee]
lea ecx, [ebp - 0x24c]
subss xmm0, dword [0x10091170]
and dword [ebp - 0xd6], 0
or dword [ebp - 4], 0xffffffff
movss dword [ebp - 0xee], xmm0
call fcn.10001748
mov ecx, dword [0x1015c858]
cmp dword [ecx + 0x94], 0
je 0x1003b22a
push ecx
push ecx
xor eax, eax
mov dword [esp + 4], 0x3f8ccccd
mov dword [ebp - 0x30], 0xc2700000
mov dword [ebp - 0x2c], 0xc2700000
mov word [ebp - 0xbe], ax
mov dword [esp], 0x3f800000
call fcn.100089ae
fstp dword [ebp - 0xca]
mov dword [esp + 4], 0x3f8ccccd
mov dword [esp], 0x3f800000
call fcn.100089ae
pop ecx
pop ecx
fstp dword [ebp - 0xc6]
call fcn.100699e0
and eax, 0x80000001
jns 0x1003b21c
dec eax
or eax, 0xfffffffe
inc eax
movss xmm0, dword [ebp + eax*4 - 0x30]
movss dword [ebp - 0xc2], xmm0
mov ecx, edi
call fcn.100018e9
push 1
push 8
lea eax, [ebp - 0x10]
mov byte [ebp - 0x10], 0xcf
push eax
mov ecx, edi
call fcn.100019a3
push 0x44
lea eax, [ebp - 0xfc]
mov ecx, edi
push eax
call fcn.10001952
cmp byte [ebp - 0x11], 0xc8
jne 0x1003b6cc
mov ecx, edi
call fcn.100018f1
push 1
push 8
lea eax, [ebp - 0x11]
mov ecx, edi
push eax
call fcn.10001831
push 0x3f
lea eax, [ebp - 0x84]
mov ecx, edi
push eax
call fcn.100017e3
mov edx, dword [0x1015c858]
xor esi, esi
cmp dword [edx + 0xe5], esi
je 0x1003b29b
mov dword [ebp - 0x64], 0x469c4000
cmp dword [edx + 0xd5], esi
je 0x1003b303
push 1
call fcn.1003fbf6
pop ecx
test eax, eax
je 0x1003b2fd
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
movss xmm0, dword [ebp - 0x64]
subss xmm0, dword [0x10088bc8]
and dword [ebp - 0x60], esi
and dword [ebp - 0x5c], esi
pop ecx
pop ecx
mov dword [ebp - 0x58], 0x3fc00000
movss dword [ebp - 0x64], xmm0
mov edx, dword [0x1015c858]
cmp dword [edx + 0xd9], esi
je 0x1003b46c
test byte [ebp - 0x7e], 4
je 0x1003b46c
movzx eax, word [edx + 0x4a]
push eax
call fcn.100087e3
pop ecx
test al, al
je 0x1003b34e
mov eax, dword [0x1015c858]
cmp dword [eax + 0x4a], 0xffffffff
je 0x1003b34e
push ecx
push ecx
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3dcccccd
call fcn.100089ae
pop ecx
fstp dword [ebp - 0x18]
pop ecx
push ecx
push ecx
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3dcccccd
call fcn.100089ae
fstp dword [ebp - 0x34]
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3e360957
call fcn.100089ae
movss xmm0, dword [ebp - 0x18]
addss xmm0, dword [ebp - 0x60]
fstp dword [ebp - 0x1c]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [ebp - 0x34]
addss xmm0, dword [ebp - 0x5c]
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0x1c]
addss xmm0, dword [ebp - 0x58]
movss dword [ebp - 0x58], xmm0
movss xmm0, dword [ebp - 0x64]
subss xmm0, dword [0x10088bc8]
movss dword [ebp - 0x64], xmm0
call fcn.100089ae
fstp dword [ebp - 0x7c]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
call fcn.100089ae
fstp dword [ebp - 0x78]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
call fcn.100089ae
fstp dword [ebp - 0x74]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
call fcn.100089ae
mov edx, dword [0x1015c858]
mov eax, dword [0x101a553c]
fstp dword [ebp - 0x70]
pop ecx
pop ecx
mov ecx, dword [edx + 0x4a]
mov eax, dword [eax + ecx*4 + 0x26]
mov ecx, dword [eax + 8]
movzx eax, byte [ecx + 0x1a]
sub eax, 0x11
je 0x1003b44b
dec eax
sub eax, 1
jne 0x1003b46c
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ecx + 8]
mov eax, dword [eax + 0x4c]
jmp 0x1003b458
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
mov edx, dword [0x1015c858]
pop ecx
pop ecx
cmp dword [edx + 0xdd], esi
je 0x1003b4de
test byte [ebp - 0x7e], 4
je 0x1003b4de
movss xmm0, dword [ebp - 0x64]
subss xmm0, dword [0x10088bc8]
mov eax, dword [0x101a553c]
mov dword [ebp - 0x58], 0x3f800000
movss dword [ebp - 0x64], xmm0
mov ecx, dword [edx + 0x4a]
mov eax, dword [eax + ecx*4 + 0x26]
mov ecx, dword [eax + 8]
movzx eax, byte [ecx + 0x1a]
sub eax, 0x11
je 0x1003b4bd
dec eax
sub eax, 1
jne 0x1003b4de
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ecx + 8]
mov eax, dword [eax + 0x4c]
jmp 0x1003b4ca
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
mov edx, dword [0x1015c858]
pop ecx
pop ecx
cmp dword [edx + 0xe1], esi
je 0x1003b65b
test byte [ebp - 0x7e], 4
je 0x1003b65b
movzx eax, word [edx + 0x4a]
push eax
call fcn.100087e3
pop ecx
test al, al
je 0x1003b529
mov eax, dword [0x1015c858]
cmp dword [eax + 0x4a], 0xffffffff
je 0x1003b529
push ecx
push ecx
mov dword [esp + 4], 0x3fc00000
mov dword [esp], 0x3dcccccd
call fcn.100089ae
pop ecx
fstp dword [ebp - 0x1c]
pop ecx
push ecx
push ecx
mov dword [esp + 4], 0x3fc00000
mov dword [esp], 0x3dcccccd
call fcn.100089ae
fstp dword [ebp - 0x18]
mov dword [esp + 4], 0x3fc00000
mov dword [esp], 0x3e360957
call fcn.100089ae
movss xmm0, dword [ebp - 0x1c]
addss xmm0, xmm0
mov dword [esp + 4], 0x3f6d1cc1
fstp dword [ebp - 0x34]
mov dword [esp], 0xbf800000
addss xmm0, dword [ebp - 0x60]
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [ebp - 0x18]
mulss xmm0, dword [0x10088c30]
addss xmm0, dword [ebp - 0x5c]
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0x34]
mulss xmm0, dword [0x10088c30]
addss xmm0, dword [ebp - 0x58]
movss dword [ebp - 0x58], xmm0
movss xmm0, dword [ebp - 0x64]
subss xmm0, dword [0x10088bc8]
movss dword [ebp - 0x64], xmm0
call fcn.100089ae
fstp dword [ebp - 0x7c]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
call fcn.100089ae
fstp dword [ebp - 0x78]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
call fcn.100089ae
fstp dword [ebp - 0x74]
mov dword [esp + 4], 0x3f6d1cc1
mov dword [esp], 0xbf800000
call fcn.100089ae
mov edx, dword [0x1015c858]
mov eax, dword [0x101a553c]
fstp dword [ebp - 0x70]
pop ecx
pop ecx
mov ecx, dword [edx + 0x4a]
mov eax, dword [eax + ecx*4 + 0x26]
mov ecx, dword [eax + 8]
movzx eax, byte [ecx + 0x1a]
sub eax, 0x11
je 0x1003b63a
dec eax
sub eax, 1
jne 0x1003b65b
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ecx + 8]
mov eax, dword [eax + 0x4c]
jmp 0x1003b647
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
mov edx, dword [0x1015c858]
pop ecx
pop ecx
cmp dword [edx + 0x2541a], esi
je 0x1003b6a2
movss xmm0, dword [ebp - 0x60]
mov eax, 0x80
addss xmm0, dword [0x100910fc]
mov word [ebp - 0x80], ax
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [ebp - 0x5c]
addss xmm0, dword [0x100910fc]
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [0x1008336c]
movss dword [ebp - 0x58], xmm0
mov ecx, edi
call fcn.100018e9
push 1
push 8
lea eax, [ebp - 0x10]
mov byte [ebp - 0x10], 0xc8
push eax
mov ecx, edi
call fcn.100019a3
push 0x3f
lea eax, [ebp - 0x84]
mov ecx, edi
push eax
call fcn.10001952
cmp byte [ebp - 0x11], 0xcb
jne 0x1003bbc5
mov ecx, edi
call fcn.100018f1
push 1
push 8
lea eax, [ebp - 0x11]
mov ecx, edi
push eax
call fcn.10001831
push 0x1f
lea eax, [ebp - 0x64]
mov ecx, edi
push eax
call fcn.100017e3
mov eax, dword [0x1015c858]
mov byte [ebp - 0x64], 7
cmp dword [eax + 0x3e], 0
je 0x1003b7de
cmp dword [eax + 0x4a], 0xffffffff
je 0x1003b7de
push 0
push 0xffffffffffffffff
call fcn.1002ad9c
mov esi, eax
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.100410d0
lea ecx, [ebp - 0xb8]
push ecx
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x28]
push eax
mov eax, dword [esi + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
movss xmm0, dword [ebp - 0xb8]
add esp, 0x10
mov eax, esp
sub esp, 0xc
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0xb4]
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0xb0]
movss dword [eax + 8], xmm0
mov eax, esp
movss xmm0, dword [ebp - 0x28]
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x24]
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
movss dword [eax + 8], xmm0
call fcn.100086ed
movss xmm1, dword [0x1008334c]
add esp, 0x18
fstp dword [ebp - 0x1c]
divss xmm1, dword [ebp - 0x1c]
xor eax, eax
movss xmm0, dword [ebp + eax - 0xb8]
subss xmm0, dword [ebp + eax - 0x28]
mulss xmm0, xmm1
movss dword [ebp + eax - 0x63], xmm0
add eax, 4
cmp eax, 0xc
jl 0x1003b7b8
mov eax, dword [0x1015c858]
movzx eax, word [eax + 0x4a]
push eax
call fcn.100087e3
pop ecx
test al, al
je 0x1003b942
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov ecx, dword [0x101b979c]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov esi, dword [eax + 0x2a4]
mov eax, dword [ecx]
call dword [eax]
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
mov ecx, eax
mov eax, dword [ecx + 4]
mov eax, dword [eax + 4]
add eax, 4
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
lea edi, [ebp - 0x28]
mov esi, eax
mov eax, dword [ecx + 4]
add ecx, 4
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 4]
add ecx, eax
movsd dword es:[edi], dword [esi]
mov eax, dword [ecx]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x28]
movss xmm0, dword [ebp - 0x28]
lea edi, [ebp - 0x44]
movss xmm1, dword [ebp - 0x24]
mov esi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
subss xmm0, dword [ebp - 0x44]
subss xmm1, dword [ebp - 0x40]
movaps xmm3, xmm0
movss dword [ebp - 0x34], xmm0
mulss xmm3, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm1
movss dword [ebp - 0x2c], xmm1
addss xmm3, xmm0
movss xmm0, dword [ebp - 0x20]
subss xmm0, dword [ebp - 0x3c]
movaps xmm1, xmm3
movaps xmm2, xmm0
movss dword [ebp - 0x1c], xmm0
mulss xmm2, xmm0
xorps xmm0, xmm0
addss xmm2, xmm3
mulss xmm1, xmm2
sqrtss xmm0, xmm2
sqrtss xmm1, xmm1
movss dword [ebp - 0x18], xmm0
divss xmm3, xmm1
maxss xmm3, dword [0x1008d050]
minss xmm3, dword [0x1008334c]
movaps xmm0, xmm3
call fcn.1006a31c
movss xmm3, dword [ebp - 0x1c]
movaps xmm1, xmm0
xorps xmm0, xmm0
comiss xmm0, xmm3
ja 0x1003b8ec
xorps xmm1, xmmword [0x100833e0]
movss xmm2, dword [0x1008334c]
divss xmm2, dword [ebp - 0x18]
mov edi, dword [ebp + 8]
movss dword [ebp - 0x4b], xmm1
movaps xmm0, xmm2
mulss xmm0, dword [ebp - 0x34]
movss dword [ebp - 0x63], xmm0
movaps xmm0, xmm2
mulss xmm0, dword [ebp - 0x2c]
mulss xmm2, xmm3
movss dword [ebp - 0x5f], xmm0
movss xmm0, dword [ebp - 0x44]
movss dword [ebp - 0x57], xmm0
movss xmm0, dword [ebp - 0x40]
movss dword [ebp - 0x53], xmm0
movss xmm0, dword [ebp - 0x3c]
movss dword [ebp - 0x5b], xmm2
movss dword [ebp - 0x4f], xmm0
mov eax, dword [0x1015c858]
cmp byte [eax + 0x8ced], 1
jne 0x1003b971
mov dword [ebp - 0x63], 0x3eb4c2d7
mov dword [ebp - 0x5f], 0x3eb4c250
mov dword [ebp - 0x5b], 0x3eb4c250
mov byte [eax + 0x8ced], 0
mov eax, dword [0x1015c858]
cmp byte [eax + 0x8cef], 1
jne 0x1003b996
mov dword [ebp - 0x63], 0x3eb4c2d7
mov dword [ebp - 0x5f], 0x3eb4c250
mov dword [ebp - 0x5b], 0x3eb4c250
mov byte [eax + 0x8cef], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x101844ec]
cmp eax, 0x1388
jbe 0x1003ba12
xor edi, edi
xor esi, esi
push esi
call fcn.100087e3
pop ecx
test al, al
je 0x1003b9b9
inc edi
inc esi
cmp esi, 0x3ec
jl 0x1003b9ad
movd xmm1, edi
xorps xmm2, xmm2
mov edi, dword [ebp + 8]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm1, dword [0x100910f4]
mulss xmm0, dword [0x100910f8]
movss dword [ebp - 0x5b], xmm1
ucomiss xmm0, xmm2
movss dword [ebp - 0x63], xmm0
movss dword [ebp - 0x5f], xmm0
lahf
test ah, 0x44
jp 0x1003ba07
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1003c2b6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x101844ec], eax
mov ecx, edi
call fcn.100018e9
push 1
push 8
lea eax, [ebp - 0x10]
mov byte [ebp - 0x10], 0xcb
push eax
mov ecx, edi
call fcn.100019a3
push 0x1f
lea eax, [ebp - 0x64]
mov ecx, edi
push eax
call fcn.10001952
mov eax, dword [0x1015c858]
cmp dword [eax + 0x5e], 0
je 0x1003ba62
movss xmm0, dword [ebp - 0x57]
movss dword [ebp - 0x63], xmm0
movss xmm0, dword [ebp - 0x53]
movss dword [ebp - 0x5f], xmm0
movss xmm0, dword [ebp - 0x4f]
movss dword [ebp - 0x5b], xmm0
cmp dword [eax + 0x67], 0
je 0x1003baf8
mov ecx, dword [eax + 0x4a]
cmp ecx, 0xffffffff
je 0x1003c2b6
lea eax, [ebp - 0x57]
push eax
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x28]
push eax
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
movss xmm0, dword [ebp - 0x28]
add esp, 0x10
mov eax, dword [0x1015c858]
movss dword [ebp - 0x63], xmm0
movss xmm0, dword [ebp - 0x24]
movss dword [ebp - 0x5f], xmm0
movss xmm0, dword [ebp - 0x20]
addss xmm0, dword [0x100833a0]
movss dword [ebp - 0x5b], xmm0
cmp dword [eax + 0x62], 0
je 0x1003bb42
lea ecx, [ebp - 0x57]
push ecx
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
mov eax, dword [0x1015c858]
pop ecx
pop ecx
mov dword [ebp - 0x63], 0x3e75c28f
mov dword [ebp - 0x5f], 0x3e800000
mov dword [ebp - 0x5b], 0x3e800000
cmp dword [eax + 0x46], 0
je 0x1003bbc5
mov ecx, dword [eax + 0x4a]
cmp ecx, 0xffffffff
je 0x1003c2b2
lea eax, [ebp - 0x57]
push eax
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
push 0
push 0xffffffffffffffff
call fcn.1002ad9c
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.100410d0
mov ecx, dword [0x101b979c]
mov esi, eax
add esp, 0x14
mov eax, dword [ecx]
call dword [eax]
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
and dword [ebp - 0x28], 0
mov ecx, eax
and dword [ebp - 0x24], 0
lea eax, [ebp - 0x28]
and dword [ebp - 0x20], 0
push eax
mov eax, dword [0x1015c858]
mov edx, dword [ecx]
push dword [eax + 0x5a]
call dword [edx + 0x74]
cmp byte [ebp - 0x11], 0xce
jne 0x1003c2ba
push str.ID_BULLET_SYNC
call fcn.10058d45
pop ecx
mov ecx, edi
call fcn.100018f1
push 1
push 8
lea eax, [ebp - 0x11]
mov ecx, edi
push eax
call fcn.10001831
push 0x28
lea eax, [ebp - 0xac]
mov ecx, edi
push eax
call fcn.100017e3
mov eax, dword [0x1015c858]
cmp dword [eax + 0x3e], 1
jne 0x1003c2ba
cmp byte [eax + 0x66], 0
jne 0x1003bc55
cmp dword [eax + 0x4a], 0xffffffff
je 0x1003c2b6
movzx eax, word [eax + 0x4a]
push eax
call fcn.100087e3
pop ecx
test al, al
je 0x1003c2b6
lea eax, [ebp - 0x120]
push eax
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.10041218
pop ecx
pop ecx
test eax, eax
je 0x1003c2b6
mov eax, dword [0x1015c858]
xor esi, esi
cmp dword [eax + 0x52], esi
je 0x1003bca2
push esi
push 0xffffffffffffffff
call fcn.1002ad9c
pop ecx
pop ecx
mov ecx, eax
mov eax, dword [ecx + 0x530]
cmp eax, 0x36
je 0x1003c2b2
cmp eax, 0x37
je 0x1003c2b2
movzx eax, byte [ecx + 0x718]
imul edx, eax, 0x1c
mov eax, dword [edx + ecx + 0x5a8]
test eax, eax
jle 0x1003bc9d
inc eax
mov dword [edx + ecx + 0x5a8], eax
mov eax, dword [0x1015c858]
cmp dword [eax + 0x3e], esi
je 0x1003c2ba
cmp dword [eax + 0x4a], 0xffffffff
je 0x1003c2b6
movzx eax, word [eax + 0x4a]
push eax
call fcn.100087e3
pop ecx
test al, al
je 0x1003c2b6
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.100410d0
mov dword [ebp - 0x1c], eax
mov eax, dword [0x101a553c]
movzx eax, word [eax]
push eax
call fcn.100410d0
mov edx, dword [0x1015c858]
mov esi, dword [0x101a553c]
pop ecx
pop ecx
mov eax, dword [edx + 0x4a]
mov eax, dword [esi + eax*4 + 0x26]
mov eax, dword [eax + 8]
movzx eax, byte [eax + 0x1a]
sub eax, 0x11
je 0x1003bd71
sub eax, 1
je 0x1003bd44
sub eax, 1
jne 0x1003bd9e
lea ecx, [ebp - 0x44]
mov eax, 0x98
mov edi, ecx
sub eax, edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [edx + 0x4a]
mov eax, dword [esi + eax*4 + 0x26]
mov eax, dword [eax + 8]
add eax, dword [ebp - 0x2c]
sub dword [ebp - 0x38], 1
mov eax, dword [eax + ecx]
mov dword [ecx], eax
lea ecx, [ecx + 4]
jne 0x1003bd27
jmp 0x1003bd9e
lea ecx, [ebp - 0x44]
push 0x30
mov edi, ecx
pop eax
sub eax, edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [edx + 0x4a]
mov eax, dword [esi + eax*4 + 0x26]
mov eax, dword [eax + 8]
add eax, dword [ebp - 0x2c]
sub dword [ebp - 0x38], 1
mov eax, dword [eax + ecx]
mov dword [ecx], eax
lea ecx, [ecx + 4]
jne 0x1003bd54
jmp 0x1003bd9e
lea ecx, [ebp - 0x44]
mov eax, 0x120
mov edi, ecx
sub eax, edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [edx + 0x4a]
mov eax, dword [esi + eax*4 + 0x26]
mov eax, dword [eax + 8]
add eax, dword [ebp - 0x2c]
sub dword [ebp - 0x38], 1
mov eax, dword [eax + ecx]
mov dword [ecx], eax
lea ecx, [ecx + 4]
jne 0x1003bd83
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x44]
push eax
mov eax, dword [esi + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x12c]
push eax
mov eax, dword [esi + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x44]
push eax
mov eax, dword [0x1015c858]
movzx eax, word [eax + 0x4a]
push eax
call fcn.10007eba
mov byte [ebp - 0x10], al
lea eax, [ebp - 0x138]
push eax
mov eax, dword [0x101a553c]
mov eax, dword [eax + 0x1e]
mov eax, dword [eax]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x9d]
push eax
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
mov ecx, dword [0x101a5528]
lea eax, [ebp - 0x9d]
add esp, 0x2c
push eax
call fcn.100409b6
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.100410d0
pop ecx
mov ecx, dword [0x101b979c]
mov esi, eax
mov eax, dword [ecx]
call dword [eax]
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x64]
push 0
push 0xffffffffffffffff
mov esi, eax
call fcn.1002ad9c
and dword [ebp - 0x108], 0
lea eax, [ebp - 0x108]
and dword [ebp - 0x104], 0
and dword [ebp - 0x100], 0
mov edx, dword [esi]
pop ecx
pop ecx
push eax
mov eax, dword [0x1015c858]
mov ecx, esi
push dword [eax + 0x5a]
call dword [edx + 0x74]
mov eax, dword [0x1015c858]
mov byte [ebp - 0xac], 1
push dword [eax + 0x4a]
call fcn.10041317
pop ecx
cmp eax, 0x13
je 0x1003bed0
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.10041317
pop ecx
cmp eax, 0x12
jne 0x1003bf3a
mov eax, dword [0x1015c858]
push dword [eax + 0x4a]
call fcn.10041317
cmp eax, 0x12
mov eax, dword [0x1015c858]
pop ecx
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
jne 0x1003bf25
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x4c]
mov eax, dword [eax + 0x460]
test eax, eax
je 0x1003bf33
push eax
call fcn.1002afd5
pop ecx
mov ecx, dword [eax*4 + 0x101ab358]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
test eax, eax
je 0x1003bf33
mov eax, dword [eax + 8]
mov ax, word [eax + 0x80]
mov word [ebp - 0xab], ax
mov byte [ebp - 0xac], 2
movss xmm1, dword [ebp - 0x114]
movss xmm0, dword [ebp - 0x44]
addss xmm0, xmm1
movss xmm2, dword [ebp - 0x110]
movss dword [ebp - 0x91], xmm1
movsd xmm1, qword [0x10091110]
movss xmm3, dword [ebp - 0x10c]
mov ecx, dword [0x101b97a4]
cvtps2pd xmm0, xmm0
movss dword [ebp - 0x8d], xmm2
subsd xmm0, xmm1
movss dword [ebp - 0x89], xmm3
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x9d], xmm0
movss xmm0, dword [ebp - 0x40]
addss xmm0, xmm2
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x99], xmm0
movss xmm0, dword [ebp - 0x3c]
addss xmm0, xmm3
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x95], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
movss xmm0, dword [eax]
movss dword [ebp - 0xa9], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
movss xmm0, dword [eax + 4]
movss dword [ebp - 0xa5], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov edx, dword [0x1015c858]
mov ecx, dword [0x101a553c]
movss xmm0, dword [eax + 8]
movss dword [ebp - 0xa1], xmm0
mov ax, word [edx + 0x4a]
mov word [ebp - 0xab], ax
mov eax, dword [ecx + 0x1e]
mov eax, dword [eax]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
mov eax, dword [edx + 0x4a]
mov eax, dword [ecx + eax*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403e7
mov eax, dword [0x1015c858]
add esp, 8
fstp st(0)
cmp dword [eax + 0x42], 0
je 0x1003c1b1
push dword [eax + 0x4a]
call fcn.100410d0
mov esi, eax
pop ecx
test esi, esi
je 0x1003c1ac
lea eax, [ebp - 0x28]
push eax
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
mov eax, dword [eax + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
lea eax, [ebp - 0x9d]
push eax
mov eax, dword [esi + 0x14]
add eax, 0x30
push eax
call fcn.100403d7
mov ecx, dword [0x101a5528]
add esp, 0x10
mov eax, 0xffff
mov byte [ebp - 0xac], 0
mov word [ebp - 0xab], ax
lea eax, [ebp - 0x9d]
push eax
call fcn.100409b6
mov ecx, dword [0x101b97a4]
movss xmm2, dword [ebp - 0x44]
movss xmm1, dword [ebp - 0x40]
movss xmm0, dword [ebp - 0x3c]
movss dword [ebp - 0x91], xmm2
movss dword [ebp - 0x8d], xmm1
movss dword [ebp - 0x89], xmm0
movss dword [ebp - 0x9d], xmm2
movss dword [ebp - 0x99], xmm1
movss dword [ebp - 0x95], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
movss xmm0, dword [eax]
movss dword [ebp - 0xa9], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
mov ecx, dword [0x101b97a4]
movss xmm0, dword [eax + 4]
movss dword [ebp - 0xa5], xmm0
mov eax, dword [ecx + 4]
add ecx, 4
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 0x28]
movss xmm0, dword [eax + 8]
movss dword [ebp - 0xa1], xmm0
mov eax, dword [0x1015c858]
cmp byte [eax + 0x253f2], 0
je 0x1003c1d5
mov byte [eax + 0x253f1], 1
mov eax, dword [0x1015c858]
mov dword [eax + 0x253f3], 2
mov eax, dword [0x1015c858]
movss xmm0, dword [ebp - 0x9d]
movss dword [eax + 0x253e5], xmm0
mov eax, dword [0x1015c858]
movss xmm0, dword [ebp - 0x99]
movss dword [eax + 0x253e9], xmm0
mov eax, dword [0x1015c858]
movss xmm0, dword [ebp - 0x95]
movss dword [eax + 0x253ed], xmm0
mov eax, dword [0x1015c858]
mov ecx, dword [eax + 0x4a]
mov eax, dword [0x101a553c]
mov eax, dword [eax + ecx*4 + 0x26]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x2a4]
movss xmm0, dword [eax + 0x540]
ucomiss xmm0, dword [0x10083364]
lahf
test ah, 0x44
jnp 0x1003c2ba
mov ecx, edi
call fcn.100018e9
push 1
push 8
lea eax, [ebp + 8]
mov byte [ebp + 8], 0xce
push eax
mov ecx, edi
call fcn.100019a3
push 0x28
lea eax, [ebp - 0xac]
mov ecx, edi
push eax
call fcn.10001952
mov ecx, dword [0x101a5528]
push 0
push 7
push 1
push edi
call fcn.100409a6
mov cl, byte [ebp - 0x10]
movzx eax, cl
push eax
mov eax, dword [0x101a553c]
mov eax, dword [eax + 0x1e]
movzx eax, byte [eax + 0x18d]
push eax
call fcn.10007d46
mov eax, dword [0x1015c858]
push ecx
mov ecx, dword [0x101a5528]
fstp dword [esp]
movzx eax, word [eax + 0x4a]
push eax
call fcn.10040a62
xor al, al
jmp 0x1003c2ea
mov al, 1
jmp 0x1003c2ea
test edi, edi
je 0x1003c2d4
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push edi
call fcn.1000417e
add esp, 0x10
test al, al
je 0x1003c2b2
mov eax, dword [0x101a5528]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
mov ecx, dword [eax]
push dword [ebp + 0xc]
push edi
mov eax, dword [ecx]
call dword [eax + 0x18]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
leave
ret 0x10