Function at 0x1003bda0
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1019c9bd
mov eax, dword fs:[0]
push eax
sub esp, 0x354
mov eax, dword [0x102b5040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3c], ecx
call fcn.1009f680
mov dword [ebp - 0x1f8], eax
call fcn.1009f690
fstp dword [ebp - 0x1f4]
push 0
push 0
push 0x10268a98
push ecx
movss xmm0, dword [0x102a985c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a983c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1f4]
movss dword [esp], xmm0
lea eax, [ebp - 0x330]
push eax
mov ecx, dword [ebp - 0x1f8]
call fcn.100bec70
movss xmm0, dword [eax]
movss dword [ebp - 0x200], xmm0
call fcn.100a4e40
fstp dword [ebp - 0x1fc]
movss xmm0, dword [ebp - 0x1fc]
mov ecx, dword [ebp - 0x3c]
mulss xmm0, dword [ecx]
push ecx
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x200]
movss dword [esp], xmm0
lea ecx, [ebp - 0x340]
call fcn.10009b50
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0x218], edx
mov dword [ecx + 0x21c], eax
mov dword [ebp - 0x78], 0
jmp 0x1003be95
mov edx, dword [ebp - 0x78]
add edx, 1
mov dword [ebp - 0x78], edx
cmp dword [ebp - 0x78], 0x15
jge 0x1003bf25
mov eax, dword [ebp - 0x3c]
add eax, 0x60
mov dword [ebp - 0x204], eax
mov ecx, dword [ebp - 0x78]
push ecx
mov ecx, dword [ebp - 0x204]
call fcn.10043a30
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x2c0]
push eax
call fcn.10090300
add esp, 8
call fcn.10090980
movss xmm0, dword [ebp - 0x2b4]
mulss xmm0, dword [eax]
movss dword [ebp - 0x2b4], xmm0
lea ecx, [ebp - 0x2c0]
push ecx
call fcn.10090400
add esp, 4
mov dword [ebp - 0x20c], eax
mov edx, dword [ebp - 0x3c]
add edx, 0xb4
mov dword [ebp - 0x208], edx
mov eax, dword [ebp - 0x78]
push eax
mov ecx, dword [ebp - 0x208]
call fcn.10043a30
mov ecx, dword [ebp - 0x20c]
mov dword [eax], ecx
jmp 0x1003be8c
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.1002cd70
movzx edx, al
test edx, edx
jne 0x1003bf52
push 0x365
push 0x10268aa0
push str.mLineBuffer.empty__
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
lea ecx, [ebp - 0xbc]
push ecx
call fcn.100a4fa0
add esp, 4
call fcn.1009f660
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x3c]
movss xmm0, dword [edx + 0x44]
movss dword [ebp - 0xa0], xmm0
mov eax, dword [ebp - 0x3c]
movzx ecx, byte [eax + 0x40]
test ecx, ecx
je 0x1003bf9c
mov edx, dword [ebp - 0x3c]
mov byte [edx + 0x40], 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
call fcn.100a5e90
add esp, 4
lea eax, [ebp - 0x22c]
push eax
call fcn.100a4b20
add esp, 4
call fcn.100a5d80
fstp dword [ebp - 0x90]
call fcn.100a5da0
fstp dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x7c]
divss xmm0, dword [ecx + 0x21c]
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
call fcn.1019a730
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.10043480
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.10043480
mov esi, eax
sub esi, 1
movss xmm0, dword [ebp - 0x7c]
addss xmm0, dword [ebp - 0xb8]
mov edx, dword [ebp - 0x3c]
divss xmm0, dword [edx + 0x21c]
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
fstp dword [ebp - 0x210]
movss xmm0, dword [ebp - 0x210]
cvttss2si eax, xmm0
add eax, dword [ebp - 0x40]
cmp esi, eax
jge 0x1003c05a
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.10043480
sub eax, 1
mov dword [ebp - 0xc8], eax
jmp 0x1003c09b
movss xmm0, dword [ebp - 0x7c]
addss xmm0, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0x3c]
divss xmm0, dword [ecx + 0x21c]
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
fstp dword [ebp - 0x224]
movss xmm0, dword [ebp - 0x224]
cvttss2si edx, xmm0
add edx, dword [ebp - 0x40]
mov dword [ebp - 0xc8], edx
cmp dword [ebp - 0xc8], 0
jge 0x1003c0b3
mov dword [ebp - 0xd0], 0
jmp 0x1003c165
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.10043480
mov esi, eax
sub esi, 1
movss xmm0, dword [ebp - 0x7c]
addss xmm0, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x3c]
divss xmm0, dword [eax + 0x21c]
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
fstp dword [ebp - 0x110]
movss xmm0, dword [ebp - 0x110]
cvttss2si ecx, xmm0
add ecx, dword [ebp - 0x40]
cmp esi, ecx
jge 0x1003c118
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.10043480
sub eax, 1
mov dword [ebp - 0xcc], eax
jmp 0x1003c159
movss xmm0, dword [ebp - 0x7c]
addss xmm0, dword [ebp - 0xb8]
mov edx, dword [ebp - 0x3c]
divss xmm0, dword [edx + 0x21c]
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
fstp dword [ebp - 0x114]
movss xmm0, dword [ebp - 0x114]
cvttss2si eax, xmm0
add eax, dword [ebp - 0x40]
mov dword [ebp - 0xcc], eax
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0x130], edx
mov eax, dword [ebp - 0x118]
push eax
push 0x10268b80
push 0x10
lea ecx, [ebp - 0x20]
push ecx
call fcn.100375b0
add esp, 0x10
call fcn.1009f680
mov dword [ebp - 0x120], eax
call fcn.1009f690
fstp dword [ebp - 0x11c]
mov edx, dword [ebp - 0x3c]
cvtsi2ss xmm0, dword [edx + 0x48]
push 0
push 0
lea eax, [ebp - 0x20]
push eax
push ecx
movss xmm1, dword [0x102a985c]
movss dword [esp], xmm1
push ecx
movss xmm1, dword [0x102a983c]
movss dword [esp], xmm1
push ecx
movss xmm1, dword [ebp - 0x11c]
movss dword [esp], xmm1
lea ecx, [ebp - 0x338]
push ecx
mov ecx, dword [ebp - 0x120]
movss dword [ebp - 0x124], xmm0
call fcn.100bec70
movss xmm0, dword [ebp - 0x124]
addss xmm0, dword [eax]
mov edx, dword [ebp - 0x3c]
movss dword [edx + 0x44], xmm0
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.100434b0
movzx eax, al
test eax, eax
jne 0x1003d616
call fcn.1009f680
mov dword [ebp - 0x12c], eax
call fcn.1009f690
fstp dword [ebp - 0x128]
push 0
push 0
push 0x10268b88
push ecx
movss xmm0, dword [0x102a985c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a983c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x128]
movss dword [esp], xmm0
lea ecx, [ebp - 0x2c8]
push ecx
mov ecx, dword [ebp - 0x12c]
call fcn.100bec70
movss xmm0, dword [eax]
movss dword [ebp - 0x6c], xmm0
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 0x130]
jg 0x1003d49c
cvtsi2ss xmm0, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mulss xmm0, dword [eax + 0x21c]
addss xmm0, dword [ebp - 0x228]
push ecx
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x22c]
movss dword [esp], xmm0
lea ecx, [ebp - 0x58]
call fcn.10009b50
push ecx
movss xmm0, dword [ebp - 0x54]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [ecx + 0x44]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x88]
call fcn.10009b50
mov edx, dword [ebp - 0x3c]
add edx, 4
mov dword [ebp - 0x134], edx
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x134]
call fcn.10043460
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x40]
push ecx
mov ecx, dword [ebp - 0x3c]
call fcn.1003a2d0
push eax
mov edx, dword [ebp - 0x40]
push edx
lea ecx, [ebp - 0x2d0]
call fcn.1001e8e0
push eax
mov ecx, dword [ebp - 0x3c]
call fcn.10041d60
fstp dword [ebp - 0x138]
mov eax, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [eax + 0x44]
comiss xmm0, dword [ebp - 0xa0]
jbe 0x1003c396
mov ecx, dword [ebp - 0x40]
push ecx
mov ecx, dword [ebp - 0x3c]
call fcn.1003a2d0
push eax
mov edx, dword [ebp - 0x40]
push edx
lea ecx, [ebp - 0x2d8]
call fcn.1001e8e0
push eax
mov ecx, dword [ebp - 0x3c]
call fcn.10041d60
fstp dword [ebp - 0x13c]
mov eax, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [eax + 0x44]
movss dword [ebp - 0xd4], xmm0
jmp 0x1003c3a6
movss xmm0, dword [ebp - 0xa0]
movss dword [ebp - 0xd4], xmm0
movss xmm0, dword [ebp - 0xd4]
movss dword [ebp - 0xa0], xmm0
mov dword [ebp - 0x10c], 0
push 0
mov ecx, dword [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x234]
call fcn.1001e8e0
mov edx, dword [ebp - 0x40]
push edx
mov ecx, dword [ebp - 0x3c]
call fcn.1003a2d0
push eax
mov eax, dword [ebp - 0x40]
push eax
lea ecx, [ebp - 0x220]
call fcn.1001e8e0
movss xmm0, dword [0x102a985c]
movss dword [ebp - 0x8c], xmm0
movss xmm0, dword [0x102a985c]
movss dword [ebp - 0x68], xmm0
mov ecx, dword [ebp - 0x3c]
add ecx, 0x10
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0x3c]
add edx, 0x18
push edx
mov ecx, dword [ebp - 0x140]
call fcn.10038120
movzx eax, al
test eax, eax
jne 0x1003c447
push 0x391
push 0x10268b90
push str.mState.mSelectionStart___mState.mSelectionEnd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov edx, dword [ebp - 0x3c]
add edx, 0x10
mov dword [ebp - 0x144], edx
lea eax, [ebp - 0x220]
push eax
mov ecx, dword [ebp - 0x144]
call fcn.10038120
movzx ecx, al
test ecx, ecx
je 0x1003c4c3
mov edx, dword [ebp - 0x3c]
add edx, 0x10
mov dword [ebp - 0x148], edx
lea eax, [ebp - 0x234]
push eax
mov ecx, dword [ebp - 0x148]
call fcn.100380c0
movzx ecx, al
test ecx, ecx
je 0x1003c4a8
mov edx, dword [ebp - 0x3c]
add edx, 0x10
push edx
mov ecx, dword [ebp - 0x3c]
call fcn.10041d60
fstp dword [ebp - 0xd8]
jmp 0x1003c4b3
xorps xmm0, xmm0
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0x8c], xmm0
mov eax, dword [ebp - 0x3c]
add eax, 0x18
mov dword [ebp - 0x14c], eax
lea ecx, [ebp - 0x234]
push ecx
mov ecx, dword [ebp - 0x14c]
call fcn.100380c0
movzx edx, al
test edx, edx
je 0x1003c545
mov eax, dword [ebp - 0x3c]
add eax, 0x18
mov dword [ebp - 0x150], eax
lea ecx, [ebp - 0x220]
push ecx
mov ecx, dword [ebp - 0x150]
call fcn.10038060
movzx edx, al
test edx, edx
je 0x1003c51b
mov eax, dword [ebp - 0x3c]
add eax, 0x18
mov dword [ebp - 0xdc], eax
jmp 0x1003c527
lea ecx, [ebp - 0x220]
mov dword [ebp - 0xdc], ecx
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0x154], edx
mov eax, dword [ebp - 0x154]
push eax
mov ecx, dword [ebp - 0x3c]
call fcn.10041d60
fstp dword [ebp - 0x68]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + 0x18]
cmp edx, dword [ebp - 0x40]
jle 0x1003c565
mov eax, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x68]
addss xmm0, dword [eax + 0x218]
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [ebp - 0x8c]
ucomiss xmm0, dword [0x102a985c]
lahf
test ah, 0x44
jnp 0x1003c651
movss xmm0, dword [ebp - 0x68]
ucomiss xmm0, dword [0x102a985c]
lahf
test ah, 0x44
jnp 0x1003c651
movss xmm0, dword [ebp - 0x68]
comiss xmm0, dword [ebp - 0x8c]
jbe 0x1003c651
push ecx
movss xmm0, dword [ebp - 0x54]
movss dword [esp], xmm0
mov ecx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [ecx + 0x44]
addss xmm0, dword [ebp - 0x8c]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x258]
call fcn.10009b50
mov edx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x54]
addss xmm0, dword [edx + 0x21c]
push ecx
movss dword [esp], xmm0
mov eax, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [eax + 0x44]
addss xmm0, dword [ebp - 0x68]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x250]
call fcn.10009b50
mov ecx, dword [ebp - 0x3c]
add ecx, 0xb4
mov dword [ebp - 0x158], ecx
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0xe
mov ecx, dword [ebp - 0x158]
call fcn.10043a30
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x258]
push ecx
mov ecx, dword [ebp - 0x44]
call fcn.100b6a70
nop
push ecx
movss xmm0, dword [ebp - 0x54]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [ebp - 0x90]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0xc4]
call fcn.10009b50
nop
mov edx, dword [ebp - 0x3c]
add edx, 0x1f0
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x15c], eax
lea ecx, [ebp - 0x15c]
push ecx
mov ecx, dword [ebp - 0x160]
call fcn.100470d0
test eax, eax
je 0x1003c738
mov edx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x54]
addss xmm0, dword [edx + 0x21c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [ebp - 0xbc]
movss xmm1, dword [0x102a9674]
mulss xmm1, dword [ebp - 0x90]
addss xmm0, xmm1
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x260]
call fcn.10009b50
mov eax, dword [ebp - 0x3c]
add eax, 0xb4
mov dword [ebp - 0x164], eax
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0x10
mov ecx, dword [ebp - 0x164]
call fcn.10043a30
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x260]
push edx
lea eax, [ebp - 0xc4]
push eax
mov ecx, dword [ebp - 0x44]
call fcn.100b6a70
nop
mov ecx, dword [ebp - 0x3c]
add ecx, 0x210
mov dword [ebp - 0x16c], ecx
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x168], edx
lea eax, [ebp - 0x168]
push eax
lea ecx, [ebp - 0xb0]
push ecx
mov ecx, dword [ebp - 0x16c]
call fcn.10043750
nop
mov edx, dword [ebp - 0x3c]
add edx, 0x210
mov dword [ebp - 0x170], edx
lea eax, [ebp - 0x2ac]
push eax
mov ecx, dword [ebp - 0x170]
call fcn.10015e50
push eax
lea ecx, [ebp - 0xb0]
call fcn.1002a410
movzx ecx, al
test ecx, ecx
je 0x1003c94d
mov edx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x54]
addss xmm0, dword [edx + 0x21c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [ebp - 0xbc]
movss xmm1, dword [0x102a9674]
mulss xmm1, dword [ebp - 0x90]
addss xmm0, xmm1
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x23c]
call fcn.10009b50
mov eax, dword [ebp - 0x3c]
add eax, 0xb4
mov dword [ebp - 0x174], eax
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0xf
mov ecx, dword [ebp - 0x174]
call fcn.10043a30
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x23c]
push edx
lea eax, [ebp - 0xc4]
push eax
mov ecx, dword [ebp - 0x44]
call fcn.100b6a70
nop
push 1
lea ecx, [ebp - 0x23c]
push ecx
lea edx, [ebp - 0x58]
push edx
call fcn.100a0a00
add esp, 0xc
movzx eax, al
test eax, eax
je 0x1003c94d
call fcn.100a5fe0
nop
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a95c0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a95c0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
lea ecx, [ebp - 0x360]
call fcn.1000b290
push eax
push 0
call fcn.10090ad0
add esp, 8
lea ecx, [ebp - 0xb0]
call fcn.10015da0
mov ecx, dword [eax]
push ecx
push str.Error_at_line__d:
call fcn.100c6170
add esp, 8
push 1
call fcn.10090b60
add esp, 4
call fcn.100c8710
nop
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a95c0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
lea ecx, [ebp - 0x350]
call fcn.1000b290
push eax
push 0
call fcn.10090ad0
add esp, 8
lea ecx, [ebp - 0xb0]
call fcn.10015da0
add eax, 4
mov ecx, eax
call fcn.100165d0
push eax
push 0x10268cbc
call fcn.100c6170
add esp, 8
push 1
call fcn.10090b60
add esp, 4
call fcn.100a6190
nop
mov edx, dword [ebp - 0x40]
add edx, 1
push edx
push 0x10268cc0
push 0x10
lea eax, [ebp - 0x20]
push eax
call fcn.100375b0
add esp, 0x10
call fcn.1009f680
mov dword [ebp - 0x17c], eax
call fcn.1009f690
fstp dword [ebp - 0x178]
push 0
push 0
lea ecx, [ebp - 0x20]
push ecx
push ecx
movss xmm0, dword [0x102a985c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a983c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x178]
movss dword [esp], xmm0
lea edx, [ebp - 0x2e0]
push edx
mov ecx, dword [ebp - 0x17c]
call fcn.100bec70
movss xmm0, dword [eax]
movss dword [ebp - 0x184], xmm0
mov eax, dword [ebp - 0x3c]
add eax, 0xb4
mov dword [ebp - 0x180], eax
push 0x11
mov ecx, dword [ebp - 0x180]
call fcn.10043a30
mov ecx, dword [eax]
mov dword [ebp - 0x188], ecx
push ecx
movss xmm0, dword [ebp - 0x54]
movss dword [esp], xmm0
mov edx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x58]
addss xmm0, dword [edx + 0x44]
subss xmm0, dword [ebp - 0x184]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x2e8]
call fcn.10009b50
mov dword [ebp - 0x18c], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0x188]
push ecx
mov edx, dword [ebp - 0x18c]
push edx
mov ecx, dword [ebp - 0x44]
call fcn.100b6e00
nop
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x20]
cmp ecx, dword [ebp - 0x40]
jne 0x1003ce7c
push 0
call fcn.1009eec0
add esp, 4
mov byte [ebp - 0x45], al
mov ecx, dword [ebp - 0x3c]
call fcn.100405c0
movzx edx, al
test edx, edx
jne 0x1003cb6c
mov eax, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0xc0]
addss xmm0, dword [eax + 0x21c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0xc4]
addss xmm0, dword [ebp - 0xbc]
addss xmm0, dword [ebp - 0x90]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x244]
call fcn.10009b50
mov ecx, dword [ebp - 0x3c]
add ecx, 0xb4
mov dword [ebp - 0x190], ecx
movzx edx, byte [ebp - 0x45]
test edx, edx
je 0x1003cad8
mov dword [ebp - 0xe0], 0x12
jmp 0x1003cae2
mov dword [ebp - 0xe0], 0x13
mov eax, dword [ebp - 0xe0]
push eax
mov ecx, dword [ebp - 0x190]
call fcn.10043a30
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x244]
push edx
lea eax, [ebp - 0xc4]
push eax
mov ecx, dword [ebp - 0x44]
call fcn.100b6a70
mov ecx, dword [ebp - 0x3c]
add ecx, 0xb4
mov dword [ebp - 0x194], ecx
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push 0
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push 0x14
mov ecx, dword [ebp - 0x194]
call fcn.10043a30
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x244]
push eax
lea ecx, [ebp - 0xc4]
push ecx
mov ecx, dword [ebp - 0x44]
call fcn.100b6900
nop
movzx edx, byte [ebp - 0x45]
test edx, edx
je 0x1003ce7c
lea eax, [ebp - 0x2f0]
push eax
call fcn.10037600
add esp, 4
mov dword [ebp - 0x198], eax
lea ecx, [ebp - 0x2f8]
push ecx
mov ecx, dword [ebp - 0x198]
call fcn.10044400
push eax
lea edx, [ebp - 0x300]
push edx
call fcn.10046e30
add esp, 8
mov ecx, eax
call fcn.100443e0
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x104], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x108]
sub ecx, dword [eax + 0x248]
mov edx, dword [ebp - 0x104]
sbb edx, dword [eax + 0x24c]
mov dword [ebp - 0x100], ecx
mov dword [ebp - 0xfc], edx
cmp dword [ebp - 0xfc], 0
ja 0x1003cc02
cmp dword [ebp - 0x100], 0x190
jbe 0x1003ce7c
movss xmm0, dword [0x102a9634]
movss dword [ebp - 0xa8], xmm0
mov eax, dword [ebp - 0x3c]
add eax, 0x20
push eax
mov ecx, dword [ebp - 0x3c]
call fcn.1003a140
mov dword [ebp - 0xac], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 0x20
push ecx
mov ecx, dword [ebp - 0x3c]
call fcn.10041d60
fstp dword [ebp - 0x94]
mov edx, dword [ebp - 0x3c]
movzx eax, byte [edx + 0x3c]
test eax, eax
je 0x1003cda0
mov ecx, dword [ebp - 0x50]
call fcn.10043480
cmp dword [ebp - 0xac], eax
jge 0x1003cda0
mov ecx, dword [ebp - 0xac]
push ecx
mov ecx, dword [ebp - 0x50]
call fcn.10043460
mov dl, byte [eax]
mov byte [ebp - 0x59], dl
movzx eax, byte [ebp - 0x59]
cmp eax, 9
jne 0x1003ccf7
movss xmm0, dword [0x102a9634]
addss xmm0, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x3c]
cvtsi2ss xmm1, dword [ecx + 0x38]
mulss xmm1, dword [ebp - 0x6c]
divss xmm0, xmm1
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
fstp dword [ebp - 0x19c]
movss xmm0, dword [ebp - 0x19c]
addss xmm0, dword [0x102a9634]
mov edx, dword [ebp - 0x3c]
cvtsi2ss xmm1, dword [edx + 0x38]
mulss xmm1, dword [ebp - 0x6c]
mulss xmm0, xmm1
movss dword [ebp - 0x1a0], xmm0
movss xmm0, dword [ebp - 0x1a0]
subss xmm0, dword [ebp - 0x94]
movss dword [ebp - 0xa8], xmm0
jmp 0x1003cda0
mov eax, dword [ebp - 0xac]
push eax
mov ecx, dword [ebp - 0x50]
call fcn.10043460
mov ecx, 1
imul edx, ecx, 0
mov al, byte [eax]
mov byte [ebp + edx - 0x74], al
mov dword [ebp - 0xe4], 1
cmp dword [ebp - 0xe4], 2
jae 0x1003cd29
jmp 0x1003cd2f
call fcn.10141956
nop
mov ecx, dword [ebp - 0xe4]
mov byte [ebp + ecx - 0x74], 0
call fcn.1009f680
mov dword [ebp - 0x1a8], eax
call fcn.1009f690
fstp dword [ebp - 0x1a4]
push 0
push 0
lea edx, [ebp - 0x74]
push edx
push ecx
movss xmm0, dword [0x102a985c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a983c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1a4]
movss dword [esp], xmm0
lea eax, [ebp - 0x308]
push eax
mov ecx, dword [ebp - 0x1a8]
call fcn.100bec70
movss xmm0, dword [eax]
movss dword [ebp - 0xa8], xmm0
push ecx
movss xmm0, dword [ebp - 0x54]
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x94]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x270]
call fcn.10009b50
mov ecx, dword [ebp - 0x3c]
movss xmm0, dword [ebp - 0x54]
addss xmm0, dword [ecx + 0x21c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x94]
addss xmm0, dword [ebp - 0xa8]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x268]
call fcn.10009b50
mov edx, dword [ebp - 0x3c]
add edx, 0xb4
mov dword [ebp - 0x1ac], edx
push 0
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0xd
mov ecx, dword [ebp - 0x1ac]
call fcn.10043a30
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x268]
push ecx
lea edx, [ebp - 0x270]
push edx
mov ecx, dword [ebp - 0x44]
call fcn.100b6a70
nop
cmp dword [ebp - 0xfc], 0
ja 0x1003ce61
cmp dword [ebp - 0x100], 0x320
jbe 0x1003ce7c
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x108]
mov edx, dword [ebp - 0x104]
mov dword [eax + 0x248], ecx
mov dword [eax + 0x24c], edx
mov ecx, dword [ebp - 0x50]
call fcn.100434b0
movzx eax, al
test eax, eax
je 0x1003ceb1
mov ecx, dword [ebp - 0x3c]
add ecx, 0xb4
mov dword [ebp - 0x1b0], ecx
push 0
mov ecx, dword [ebp - 0x1b0]
call fcn.10043a30
mov edx, dword [eax]
mov dword [ebp - 0xe8], edx
jmp 0x1003ceca
push 0
mov ecx, dword [ebp - 0x50]
call fcn.10043460
push eax
mov ecx, dword [ebp - 0x3c]
call fcn.1003af40
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x9c], eax
lea ecx, [ebp - 0x64]
call fcn.1000b220
nop
mov dword [ebp - 0x4c], 0
mov ecx, dword [ebp - 0x50]
call fcn.10043480
cmp dword [ebp - 0x4c], eax
jae 0x1003d412
mov ecx, dword [ebp - 0x4c]
push ecx
mov ecx, dword [ebp - 0x50]
call fcn.10043460
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x70]
push edx
mov ecx, dword [ebp - 0x3c]
call fcn.1003af40
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
cmp eax, dword [ebp - 0x9c]
jne 0x1003cf40
mov ecx, dword [ebp - 0x70]
movzx edx, byte [ecx]
cmp edx, 9
je 0x1003cf40
mov eax, dword [ebp - 0x70]
movzx ecx, byte [eax]
cmp ecx, 0x20
jne 0x1003d043
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.1002cd70
movzx edx, al
test edx, edx
jne 0x1003d043
movss xmm0, dword [ebp - 0x84]
addss xmm0, dword [ebp - 0x60]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x64]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x278]
call fcn.10009b50
push 0
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.100165d0
push eax
mov eax, dword [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x278]
push ecx
mov ecx, dword [ebp - 0x44]
call fcn.100b6e00
call fcn.1009f680
mov dword [ebp - 0x1bc], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.100165d0
mov dword [ebp - 0x1b4], eax
call fcn.1009f690
fstp dword [ebp - 0x1b8]
push 0
push 0
mov edx, dword [ebp - 0x1b4]
push edx
push ecx
movss xmm0, dword [0x102a985c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [0x102a983c]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1b8]
movss dword [esp], xmm0
lea eax, [ebp - 0x280]
push eax
mov ecx, dword [ebp - 0x1bc]
call fcn.100bec70
movss xmm0, dword [ebp - 0x64]
addss xmm0, dword [ebp - 0x280]
movss dword [ebp - 0x64], xmm0
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.10044360
nop
mov ecx, dword [ebp - 0xec]
mov dword [ebp - 0x9c], ecx
mov edx, dword [ebp - 0x70]
movzx eax, byte [edx]
cmp eax, 9
jne 0x1003d2a3
movss xmm0, dword [ebp - 0x64]
movss dword [ebp - 0x1c4], xmm0
movss xmm0, dword [0x102a9634]
addss xmm0, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x3c]
cvtsi2ss xmm1, dword [ecx + 0x38]
mulss xmm1, dword [ebp - 0x6c]
divss xmm0, xmm1
push ecx
movss dword [esp], xmm0
call fcn.100377d0
add esp, 4
fstp dword [ebp - 0x1c0]
movss xmm0, dword [ebp - 0x1c0]
addss xmm0, dword [0x102a9634]
mov edx, dword [ebp - 0x3c]
cvtsi2ss xmm1, dword [edx + 0x38]
mulss xmm1, dword [ebp - 0x6c]
mulss xmm0, xmm1
movss dword [ebp - 0x64], xmm0
mov eax, dword [ebp - 0x4c]
add eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x3c]
movzx edx, byte [ecx + 0x5f]
test edx, edx
je 0x1003d29e
call fcn.1009f690
fstp dword [ebp - 0x80]
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x1c4]
addss xmm0, dword [0x102a9634]
movss dword [ebp - 0x1c8], xmm0
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x64]
subss xmm0, dword [0x102a9634]
movss dword [ebp - 0xb4], xmm0
movss xmm0, dword [ebp - 0x84]
addss xmm0, dword [ebp - 0x60]
movss xmm1, dword [ebp - 0x80]
mulss xmm1, dword [0x102a95e4]
addss xmm0, xmm1
movss dword [ebp - 0x98], xmm0
push ecx
movss xmm0, dword [ebp - 0x98]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1c8]
movss dword [esp], xmm0
lea ecx, [ebp - 0x288]
call fcn.10009b50
push ecx
movss xmm0, dword [ebp - 0x98]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0xb4]
movss dword [esp], xmm0
lea ecx, [ebp - 0x218]
call fcn.10009b50
movss xmm0, dword [ebp - 0x80]
mulss xmm0, dword [0x102a95c0]
movss xmm1, dword [ebp - 0x98]
subss xmm1, xmm0
push ecx
movss dword [esp], xmm1
movss xmm0, dword [ebp - 0x80]
mulss xmm0, dword [0x102a95c0]
movss xmm1, dword [ebp - 0xb4]
subss xmm1, xmm0
push ecx
movss dword [esp], xmm1
lea ecx, [ebp - 0x290]
call fcn.10009b50
movss xmm0, dword [ebp - 0x80]
mulss xmm0, dword [0x102a95c0]
addss xmm0, dword [ebp - 0x98]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x80]
mulss xmm0, dword [0x102a95c0]
movss xmm1, dword [ebp - 0xb4]
subss xmm1, xmm0
push ecx
movss dword [esp], xmm1
lea ecx, [ebp - 0x298]
call fcn.10009b50
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push 0x90909090
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x288]
push ecx
mov ecx, dword [ebp - 0x44]
call fcn.100b6840
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push 0x90909090
lea edx, [ebp - 0x290]
push edx
lea eax, [ebp - 0x218]
push eax
mov ecx, dword [ebp - 0x44]
call fcn.100b6840
push ecx
movss xmm0, dword [0x102a9634]
movss dword [esp], xmm0
push 0x90909090
lea ecx, [ebp - 0x298]
push ecx
lea edx, [ebp - 0x218]
push edx
mov ecx, dword [ebp - 0x44]
call fcn.100b6840
nop
jmp 0x1003d3fe
mov eax, dword [ebp - 0x70]
movzx ecx, byte [eax]
cmp ecx, 0x20
jne 0x1003d37e
mov edx, dword [ebp - 0x3c]
movzx eax, byte [edx + 0x5f]
test eax, eax
je 0x1003d361
call fcn.1009f690
fstp dword [ebp - 0x1cc]
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x64]
movss xmm1, dword [ebp - 0x6c]
mulss xmm1, dword [0x102a95e4]
addss xmm0, xmm1
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x84]
addss xmm0, dword [ebp - 0x60]
movss xmm1, dword [ebp - 0x1cc]
mulss xmm1, dword [0x102a95e4]
addss xmm0, xmm1
movss dword [ebp - 0x1d0], xmm0
push 4
push 0x80808080
push ecx
movss xmm0, dword [0x102a9654]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1d0]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x1d4]
movss dword [esp], xmm0
lea ecx, [ebp - 0x310]
call fcn.10009b50
push eax
mov ecx, dword [ebp - 0x44]
call fcn.100b6b50
nop
movss xmm0, dword [ebp - 0x64]
addss xmm0, dword [ebp - 0x6c]
movss dword [ebp - 0x64], xmm0
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
jmp 0x1003d3fe
mov edx, dword [ebp - 0x70]
movzx eax, byte [edx]
push eax
call fcn.10038d30
add esp, 4
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0xa4]
sub edx, 1
mov dword [ebp - 0xa4], edx
cmp dword [ebp - 0x1d8], 0
jle 0x1003d3fe
mov eax, dword [ebp - 0x3c]
add eax, 0x230
mov dword [ebp - 0x1e0], eax
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x1dc], ecx
mov edx, dword [ebp - 0x1dc]
push edx
mov ecx, dword [ebp - 0x50]
call fcn.10043460
mov al, byte [eax]
mov byte [ebp - 0x5a], al
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
movzx edx, byte [ebp - 0x5a]
push edx
mov ecx, dword [ebp - 0x1e0]
call fcn.1002e970
nop
jmp 0x1003d393
mov eax, dword [ebp - 0x10c]
add eax, 1
mov dword [ebp - 0x10c], eax
jmp 0x1003cee6
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.1002cd70
movzx ecx, al
test ecx, ecx
jne 0x1003d48e
movss xmm0, dword [ebp - 0x84]
addss xmm0, dword [ebp - 0x60]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0x88]
addss xmm0, dword [ebp - 0x64]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x2a0]
call fcn.10009b50
push 0
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.100165d0
push eax
mov edx, dword [ebp - 0x9c]
push edx
lea eax, [ebp - 0x2a0]
push eax
mov ecx, dword [ebp - 0x44]
call fcn.100b6e00
mov ecx, dword [ebp - 0x3c]
add ecx, 0x230
call fcn.10044360
nop
mov ecx, dword [ebp - 0x40]
add ecx, 1
mov dword [ebp - 0x40], ecx
jmp 0x1003c283
push 0
call fcn.100a0c40
add esp, 4
movzx edx, al
test edx, edx
je 0x1003d616
lea eax, [ebp - 0x318]
push eax
call fcn.100a0b90
add esp, 4
push eax
lea ecx, [ebp - 0x320]
push ecx
mov ecx, dword [ebp - 0x3c]
call fcn.10039850
push eax
lea edx, [ebp - 0x38]
push edx
mov ecx, dword [ebp - 0x3c]
call fcn.1003ae40
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x38]
call fcn.1002cd70
movzx eax, al
test eax, eax
jne 0x1003d606
mov ecx, dword [ebp - 0x3c]
add ecx, 0x140
mov dword [ebp - 0x1e4], ecx
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0xf0]
push eax
mov ecx, dword [ebp - 0x1e4]
call fcn.1002fa90
nop
mov ecx, dword [ebp - 0x3c]
add ecx, 0x140
mov dword [ebp - 0x1e8], ecx
lea edx, [ebp - 0x2b0]
push edx
mov ecx, dword [ebp - 0x1e8]
call fcn.1002a5b0
push eax
lea ecx, [ebp - 0xf0]
call fcn.1002a410
movzx eax, al
test eax, eax
je 0x1003d581
call fcn.100a5fe0
push 0
lea ecx, [ebp - 0xf0]
call fcn.10043330
add eax, 0x20
mov ecx, eax
call fcn.100165d0
push eax
call fcn.100c6150
add esp, 8
call fcn.100a6190
nop
jmp 0x1003d606
mov ecx, dword [ebp - 0x3c]
add ecx, 0x160
mov dword [ebp - 0x1ec], ecx
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0xf4]
push eax
mov ecx, dword [ebp - 0x1ec]
call fcn.1002fa90
nop
mov ecx, dword [ebp - 0x3c]
add ecx, 0x160
mov dword [ebp - 0x1f0], ecx
lea edx, [ebp - 0x248]
push edx
mov ecx, dword [ebp - 0x1f0]
call fcn.1002a5b0
push eax
lea ecx, [ebp - 0xf4]
call fcn.1002a410
movzx eax, al
test eax, eax
je 0x1003d606
call fcn.100a5fe0
push 0
lea ecx, [ebp - 0xf4]
call fcn.10043330
add eax, 0x20
mov ecx, eax
call fcn.100165d0
push eax
call fcn.100c6150
add esp, 8
call fcn.100a6190
nop
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38]
call fcn.10016710
nop
mov ecx, dword [ebp - 0x3c]
add ecx, 4
call fcn.10043480
mov dword [ebp - 0xf8], eax
cvtsi2sd xmm0, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0xf8]
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x102a98b0]
movsd qword [ebp - 0x2a8], xmm0
cvtsd2ss xmm0, qword [ebp - 0x2a8]
mov edx, dword [ebp - 0x3c]
mulss xmm0, dword [edx + 0x21c]
push ecx
movss dword [esp], xmm0
movss xmm0, dword [ebp - 0xa0]
addss xmm0, dword [0x102a9674]
push ecx
movss dword [esp], xmm0
lea ecx, [ebp - 0x328]
call fcn.10009b50
push eax
call fcn.100c81e0
add esp, 4
mov eax, dword [ebp - 0x3c]
movzx ecx, byte [eax + 0x3f]
test ecx, ecx
je 0x1003d6ab
mov ecx, dword [ebp - 0x3c]
call fcn.10041fa0
call fcn.1009f450
mov edx, dword [ebp - 0x3c]
mov byte [edx + 0x3f], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.101412b5
mov esp, ebp
pop ebp
ret