Function at 0x406ab0
Capabilities:
Check http status code
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x3f8
mov eax, dword [0x44500c]
xor eax, esp
mov dword [esp + 0x3f4], eax
cmp byte [0x445747], 0
mov eax, dword [0x44574c]
push esi
push edi
je 0x4075f5
cmp eax, 2
jne 0x406c23
lea eax, [ecx - 0x334]
cmp eax, 0x16
ja 0x40837c
cmp edx, 0x14
jl 0x40837c
cmp edx, 0x28
jg 0x40837c
mov byte [esp + 0x1a], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x1a]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x1c], 0
push dword [esp + 0x1c]
call fcn.0040dd30
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2b4]
call fcn.00409580
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040dd70
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2b4]
call fcn.004094b0
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040ddb0
mov ecx, eax
call fcn.004083d0
mov edx, eax
lea ecx, [esp + 0x2b0]
call fcn.0040a770
test al, al
je 0x406bf9
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040ddf0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2b4]
call fcn.004094c0
lea ecx, [esp + 0x2b0]
call fcn.00409500
xor ecx, ecx
call fcn.0041e400
mov ecx, dword [0x4457fc]
call fcn.0040de30
push 1
call eax
add esp, 4
jmp 0x40837c
cmp eax, 3
jne 0x406c67
lea eax, [ecx - 0x316]
cmp eax, 0x12
ja 0x40837c
lea eax, [edx - 0x14]
cmp eax, 0x14
ja 0x40837c
mov ecx, dword [0x4457f0]
call fcn.0040deb0
push 6
push dword [0x4457e4]
call eax
mov dword [0x445740], 0
jmp 0x40837c
cmp eax, 7
jne 0x406ca5
lea eax, [ecx - 0x8f]
cmp eax, 0x114
ja 0x40837c
lea eax, [edx - 0x1a]
cmp eax, 0x28
ja 0x40837c
sub esp, 0x18
mov ecx, esp
push 0x44581c
call fcn.004095b0
call fcn.00419200
add esp, 0x18
jmp 0x40837c
cmp eax, 6
jne 0x406f3b
lea eax, [ecx - 0x1b2]
cmp eax, 0x28
ja 0x40837c
lea eax, [edx - 0x1a]
cmp eax, 0x28
ja 0x40837c
mov ecx, dword [0x4457f0]
mov byte [0x445747], 0
call fcn.0040df30
push 0
push dword [0x4457e4]
call eax
mov ecx, dword [0x4457f0]
call fcn.0040dfb0
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 1
mov dword [esp + 0x18], eax
call esi
cdq
sub eax, edx
mov edi, eax
sar edi, 1
push 0
sub edi, 0x12c
call esi
push 0
cdq
push 0x258
sub eax, edx
push 0x190
sar eax, 1
push edi
sub eax, 0xc8
push eax
push 0
push dword [0x4457e4]
call dword [esp + 0x30]
mov ecx, dword [0x445800]
call fcn.0040e030
push 0xf
push 0xf
push 0x258
push 0x190
push 0
push 0
call eax
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
mov esi, eax
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e0b0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x31c]
call fcn.00409580
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e0f0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x334]
call fcn.00409580
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e130
mov ecx, eax
call fcn.004083d0
mov edx, eax
lea ecx, [esp + 0x330]
call fcn.0040a770
test al, al
je 0x406e90
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e170
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x34c]
call fcn.00409580
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e1b0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x34c]
call fcn.004094c0
lea ecx, [esp + 0x348]
call fcn.00409500
lea ecx, [esp + 0x330]
call fcn.00409500
lea ecx, [esp + 0x318]
call fcn.00409500
mov ecx, dword [0x4457f0]
call fcn.0040e1f0
push 0
push esi
push dword [0x4457e4]
call eax
mov ecx, dword [0x4457f0]
call fcn.0040e270
push 0
push 0
push dword [0x4457e4]
call eax
mov ecx, dword [0x4457f0]
call fcn.0040e2f0
push dword [0x4457e4]
call eax
mov ecx, dword [0x4457ec]
call fcn.0040e370
push 0xfa
call eax
cmp byte [0x445018], 0
jne 0x406f21
push 0x43b4bd
mov ecx, 0x44581c
call fcn.004094c0
push 0x43b4bd
mov ecx, 0x44584c
call fcn.004094c0
mov ecx, dword [0x4457f0]
call fcn.0040e3f0
push 5
push dword [0x4457e4]
call eax
jmp 0x40837c
cmp eax, 4
jne 0x406f67
lea eax, [ecx - 0x2c3]
cmp eax, 0x28
ja 0x40837c
lea eax, [edx - 0x1a]
cmp eax, 0x28
ja 0x40837c
mov byte [0x445019], 1
jmp 0x40837c
cmp eax, 5
jne 0x406f93
lea eax, [ecx - 0x296]
cmp eax, 0x28
ja 0x40837c
lea eax, [edx - 0x1a]
cmp eax, 0x28
ja 0x40837c
mov byte [0x445019], 0
jmp 0x40837c
cmp eax, 0x3f3
jne 0x406ffd
lea eax, [ecx - 0x204]
cmp eax, 0x1a
ja 0x40837c
cmp edx, 0x22
jl 0x40837c
cmp edx, 0x3c
jg 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040e470
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x30]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
mov esi, eax
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e4f0
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0x3f4
jne 0x40706a
lea eax, [ecx - 0x22f]
cmp eax, 0x1a
ja 0x40837c
cmp edx, 0x22
jl 0x40837c
cmp edx, 0x3c
jg 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040e5e0
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x80]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
mov esi, eax
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e660
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0x3f5
jne 0x4070d7
lea eax, [ecx - 0x25a]
cmp eax, 0x1a
ja 0x40837c
cmp edx, 0x22
jl 0x40837c
cmp edx, 0x3c
jg 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040e750
mov byte [esp + 0x14], 0
lea ecx, [esp + 0xd0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
mov esi, eax
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040e7d0
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0x3e9
jne 0x40746d
lea eax, [ecx - 0x22]
cmp eax, 0xe6
ja 0x40837c
lea eax, [edx - 0x184]
cmp eax, 0x28
ja 0x40837c
mov eax, dword [0x44501c]
test eax, eax
jg 0x407111
cmp eax, 0xffffffff
jne 0x40837c
mov ecx, dword [0x4457f0]
call fcn.0040e8c0
push 0
push dword [0x4457e4]
call eax
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2e0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040a4b0
mov ecx, eax
call fcn.004083d0
lea ecx, [esp + 0x22]
mov dword [esp + 0x10], eax
call fcn.00409310
mov edi, eax
mov ecx, 0x44587c
lea eax, [esp + 0x28]
push eax
call fcn.00409280
mov ecx, 0x44587c
mov esi, dword [eax]
lea eax, [esp + 0x2c]
push eax
call fcn.004092b0
push edi
push esi
lea ecx, [esp + 0x3bc]
push dword [eax]
call fcn.0040a390
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
mov dword [esp + 0x18], eax
call fcn.0040a470
mov ecx, eax
call fcn.004083d0
lea ecx, [esp + 0x23]
mov dword [esp + 8], eax
call fcn.00409310
mov edi, eax
mov ecx, 0x44587c
lea eax, [esp + 0x24]
push eax
call fcn.00409280
mov ecx, 0x44587c
mov esi, dword [eax]
lea eax, [esp + 0x2d0]
push eax
call fcn.004092b0
push edi
push esi
lea ecx, [esp + 0x308]
push dword [eax]
call fcn.0040a390
mov byte [esp + 0x14], 0
lea ecx, [esp + 0x390]
push dword [esp + 0x14]
mov byte [esp + 0x22], 0
mov esi, eax
push dword [esp + 0x22]
mov byte [esp + 0x22], 0
push dword [esp + 0x22]
call fcn.0040a290
mov ecx, eax
call fcn.00408570
push eax
mov edx, 0x445804
lea ecx, [esp + 0x334]
call fcn.0040a300
add esp, 4
lea ecx, [esp + 0x348]
mov edx, eax
push esi
call fcn.0040a450
add esp, 4
lea ecx, [esp + 0x360]
mov edx, eax
push dword [esp + 8]
call fcn.0040a360
add esp, 4
lea ecx, [esp + 0x318]
mov edx, eax
push dword [esp + 0xc]
call fcn.0040a450
add esp, 4
lea ecx, [esp + 0x3e4]
mov edx, eax
push dword [esp + 0x10]
call fcn.0040a360
add esp, 4
lea ecx, [esp + 0x318]
call fcn.00409500
lea ecx, [esp + 0x360]
call fcn.00409500
lea ecx, [esp + 0x348]
call fcn.00409500
lea ecx, [esp + 0x330]
call fcn.00409500
lea ecx, [esp + 0x300]
call fcn.00409500
lea ecx, [esp + 0x3b4]
call fcn.00409500
lea ecx, [esp + 0x23]
call fcn.00409310
mov edi, eax
lea ecx, [esp + 0x3e4]
lea eax, [esp + 0x2d0]
push eax
call fcn.004093a0
lea ecx, [esp + 0x3e4]
mov esi, dword [eax]
lea eax, [esp + 0x24]
push eax
call fcn.004093d0
push edi
push esi
lea ecx, [esp + 0x380]
push dword [eax]
call fcn.0040e940
lea ecx, [esp + 0x378]
call fcn.00409270
mov ecx, eax
call fcn.00403ef0
mov ecx, dword [0x4457ec]
mov esi, eax
call fcn.0040e9c0
push 0x1f4
call eax
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ea40
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2e4]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ea80
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2e4]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040eac0
mov ecx, eax
call fcn.004083d0
mov edx, eax
lea ecx, [esp + 0x2e0]
call fcn.0040a770
test al, al
je 0x40743f
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040eb00
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2e4]
call fcn.004094c0
lea ecx, [esp + 0x2e0]
call fcn.00409500
mov ecx, dword [0x4457f0]
call fcn.0040eb40
push esi
push 0x403da0
call eax
xor ecx, ecx
call fcn.0041e400
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
cmp eax, 0x3ea
je 0x40837c
cmp eax, 0x3eb
jne 0x40837c
lea eax, [ecx - 0x254]
cmp eax, 0xe6
ja 0x40837c
cmp edx, 0x184
jl 0x40837c
cmp edx, 0x1ac
jg 0x40837c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ebc0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x364]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ec00
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x3d0]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ec40
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x3d0]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ec80
mov ecx, eax
call fcn.004083d0
lea edx, [esp + 0x3cc]
mov ecx, eax
call fcn.0040d720
test al, al
je 0x4075d8
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ecc0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x364]
call fcn.004094c0
lea ecx, [esp + 0x3cc]
call fcn.00409500
lea ecx, [esp + 0x360]
call fcn.00409500
jmp 0x40837c
mov dword [0x445750], 0
cmp eax, 1
jne 0x407650
lea eax, [ecx - 0x168]
cmp eax, 0x16
ja 0x40837c
lea eax, [edx - 0x14]
cmp eax, 0x14
ja 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040ed00
push dword [0x4457f4]
call eax
xor ecx, ecx
call fcn.0041e400
mov ecx, dword [0x4457fc]
call fcn.0040ed80
push 1
call eax
add esp, 4
jmp 0x40837c
cmp eax, 2
jne 0x407782
lea eax, [ecx - 0x14a]
cmp eax, 0x12
ja 0x40837c
lea eax, [edx - 0x14]
cmp eax, 0x14
ja 0x40837c
mov ecx, dword [0x4457f0]
call fcn.0040ee00
push 6
push dword [0x4457e4]
call eax
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ee80
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x394]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040eec0
mov ecx, eax
call fcn.004083d0
push 1
mov esi, eax
lea ecx, [esp + 0x394]
push 0
lea eax, [esp + 0x380]
push eax
call fcn.00409320
mov edx, esi
mov ecx, eax
call fcn.0040a770
lea ecx, [esp + 0x378]
mov byte [esp + 0x22], al
call fcn.00409500
cmp byte [esp + 0x22], 0
je 0x407767
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ef00
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x394]
call fcn.004094c0
lea ecx, [esp + 0x390]
call fcn.00409500
mov dword [0x445740], 0
jmp 0x40837c
cmp eax, 3
jne 0x4078a7
lea eax, [ecx - 0x28]
cmp eax, 0x140
ja 0x40837c
lea eax, [edx - 0x1c1]
cmp eax, 0x34
ja 0x40837c
cmp byte [0x445744], 0
jne 0x40837c
push 0x404050
lea ecx, [esp + 0x2d4]
call fcn.0040ef40
lea ecx, [esp + 0x2d0]
call fcn.00403830
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040ef60
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x394]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040efa0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x394]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040efe0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x394]
call fcn.004094b0
lea ecx, [esp + 0x390]
call fcn.00409500
lea ecx, [esp + 0x2d0]
mov byte [0x445744], 1
call fcn.00403810
jmp 0x40837c
cmp eax, 4
jne 0x40799e
lea eax, [ecx - 0x147]
cmp eax, 0x13
ja 0x40837c
lea eax, [edx - 0x15d]
cmp eax, 0xf
ja 0x40837c
cmp byte [0x445746], 0
lea ecx, [esp + 0x2b0]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
sete byte [0x445746]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f020
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x3b8]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f060
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x3b8]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f0a0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x3b8]
call fcn.004094b0
lea ecx, [esp + 0x3b4]
call fcn.00409500
jmp 0x40837c
cmp eax, 0x138b
jne 0x4079e6
lea eax, [ecx - 0x145]
cmp eax, 0x13
ja 0x40837c
lea eax, [edx - 0x11d]
cmp eax, 0xf
ja 0x40837c
push 0x43b4bd
mov ecx, 0x44581c
call fcn.004094c0
push 0x43b4bd
mov ecx, 0x44584c
call fcn.004094c0
jmp 0x40837c
cmp eax, 5
jne 0x407b79
lea eax, [ecx - 0x148]
cmp eax, 0x20
ja 0x40837c
lea eax, [edx - 0xe1]
cmp eax, 0x20
ja 0x40837c
cmp dword [0x445748], 0
je 0x407a29
cmp byte [0x445019], 0
jne 0x407a29
mov dword [0x445748], 0x12c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [0x445019], 1
call fcn.0040f0e0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x31c]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f120
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x304]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f160
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x304]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f1a0
mov ecx, eax
call fcn.004083d0
lea edx, [esp + 0x300]
mov ecx, eax
call fcn.0040d720
test al, al
je 0x407b5c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f1e0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x31c]
call fcn.004094c0
lea ecx, [esp + 0x300]
call fcn.00409500
lea ecx, [esp + 0x318]
call fcn.00409500
jmp 0x40837c
cmp eax, 6
jne 0x407bc4
lea eax, [ecx - 0x120]
cmp eax, 0x20
ja 0x40837c
lea eax, [edx - 0xe1]
cmp eax, 0x20
ja 0x40837c
cmp dword [0x445748], 0
je 0x407bb8
cmp byte [0x445019], 1
jne 0x407bb8
mov dword [0x445748], 0x12c
mov byte [0x445019], 0
jmp 0x40837c
cmp eax, 0x3e9
jne 0x407c2e
lea eax, [ecx - 0x97]
cmp eax, 0x14
ja 0x40837c
lea eax, [edx - 0x22b]
cmp eax, 0x14
ja 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040f220
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x120]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
mov esi, eax
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040e4f0
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0x3ea
jne 0x407c98
lea eax, [ecx - 0xbf]
cmp eax, 0x14
ja 0x40837c
lea eax, [edx - 0x22b]
cmp eax, 0x14
ja 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040f2a0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x170]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
mov esi, eax
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040e660
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0x3eb
jne 0x407dcc
lea eax, [ecx - 0xe7]
cmp eax, 0x14
ja 0x40837c
cmp edx, 0x22b
jl 0x40837c
cmp edx, 0x23f
jg 0x40837c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f320
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x304]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f360
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x304]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f3a0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x304]
call fcn.004094b0
lea ecx, [esp + 0x300]
call fcn.00409500
mov ecx, dword [0x4457ec]
call fcn.0040f3e0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x1c0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
mov esi, eax
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040e7d0
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0xfa1
jne 0x407fad
lea eax, [ecx - 0x46]
cmp eax, 0x104
ja 0x40837c
cmp edx, 0x1f7
jl 0x40837c
cmp edx, 0x20f
jg 0x40837c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f460
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x37c]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f4a0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x364]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f4e0
mov ecx, eax
call fcn.004083d0
mov edx, eax
lea ecx, [esp + 0x360]
call fcn.0040a770
test al, al
je 0x407f39
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f520
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x31c]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f560
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x31c]
call fcn.004094c0
lea ecx, [esp + 0x318]
call fcn.00409500
lea ecx, [esp + 0x360]
call fcn.00409500
lea ecx, [esp + 0x378]
call fcn.00409500
mov edx, 0x43b4bd
mov ecx, 0x445834
call fcn.0040a770
test al, al
je 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040f5a0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x210]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
mov esi, eax
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f620
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0xfa2
jne 0x4080ee
lea eax, [ecx - 0x28]
cmp eax, 0xa0
ja 0x40837c
cmp edx, 0x190
jl 0x40837c
cmp edx, 0x1ab
jg 0x40837c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f710
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2e4]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f750
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2e4]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f790
mov ecx, eax
call fcn.004083d0
mov edx, eax
lea ecx, [esp + 0x2e0]
call fcn.0040a770
test al, al
je 0x4080cf
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f7d0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x2e4]
call fcn.004094c0
lea ecx, [esp + 0x2e0]
call fcn.00409500
cmp byte [0x445018], 0
sete byte [0x445018]
jmp 0x40837c
cmp eax, 0xfa3
jne 0x40815a
lea eax, [ecx - 0xe6]
cmp eax, 0x82
ja 0x40837c
lea eax, [edx - 0x190]
cmp eax, 0x1b
ja 0x40837c
mov ecx, dword [0x4457ec]
call fcn.0040f810
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x260]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
mov esi, eax
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f620
mov ecx, eax
call fcn.00408420
push 5
push eax
call esi
jmp 0x40837c
cmp eax, 0x1389
jne 0x408284
lea eax, [ecx - 0x28]
cmp eax, 0x140
ja 0x40837c
cmp edx, 0x109
jl 0x40837c
cmp edx, 0x13f
jg 0x40837c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f890
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x334]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2e0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f8d0
mov ecx, eax
call fcn.004083d0
push 1
mov esi, eax
lea ecx, [esp + 0x334]
push 0
lea eax, [esp + 0x380]
push eax
call fcn.00409320
mov edx, esi
mov ecx, eax
call fcn.0040a770
lea ecx, [esp + 0x378]
mov byte [esp + 0x22], al
call fcn.00409500
cmp byte [esp + 0x22], 0
je 0x408269
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f910
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x334]
call fcn.004094c0
lea ecx, [esp + 0x330]
call fcn.00409500
mov dword [0x445750], 1
jmp 0x40837c
cmp eax, 0x138a
jne 0x40837c
lea eax, [ecx - 0x28]
cmp eax, 0x140
ja 0x40837c
cmp edx, 0x149
jl 0x40837c
cmp edx, 0x17f
jg 0x40837c
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2b0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f950
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x34c]
call fcn.00409580
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2e0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f990
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x34c]
call fcn.004094b0
mov byte [esp + 0x10], 0
lea ecx, [esp + 0x2d0]
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
mov byte [esp + 0x10], 0
push dword [esp + 0x10]
call fcn.0040f9d0
mov ecx, eax
call fcn.004083d0
push eax
lea ecx, [esp + 0x34c]
call fcn.004094b0
lea ecx, [esp + 0x348]
call fcn.00409500
mov dword [0x445750], 2
mov ecx, dword [0x4457f0]
call fcn.0040fa10
push 0
push 0
push dword [0x4457e4]
call eax
mov ecx, dword [0x4457f0]
call fcn.0040fa90
push dword [0x4457e4]
call eax
mov ecx, dword [esp + 0x3fc]
pop edi
pop esi
xor ecx, esp
call fcn.004398d9
mov esp, ebp
pop ebp
ret