Function at 0x40e780
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43e1a5
mov eax, dword fs:[0]
push eax
sub esp, 0xddc
mov eax, dword [0x45ae20]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0xde0], eax
mov dword [ebp - 0xdd4], edi
push 0x200
lea ecx, [ebp - 0xcd4]
push edi
push ecx
mov dword [ebp - 4], 1
call fcn.0042ac90
push 0x1f4
lea edx, [ebp - 0xad4]
push edi
push edx
call fcn.0042ac90
mov esi, 0xf
push str.eJeO8_SMcCdUA
mov dword [ebp - 0xda0], esi
mov dword [ebp - 0xda4], edi
mov byte [ebp - 0xdb4], 0
call fcn.0042c850
add esp, 0x1c
push eax
push str.eJeO8_SMcCdUA
lea ecx, [ebp - 0xdb4]
call fcn.00405a00
mov dword [ebp - 0xd30], esi
mov dword [ebp - 0xd34], edi
mov byte [ebp - 0xd44], 0
mov dword [ebp - 0xd4c], esi
mov dword [ebp - 0xd50], edi
mov byte [ebp - 0xd60], 0
mov dword [ebp - 0xd14], esi
mov dword [ebp - 0xd18], edi
mov byte [ebp - 0xd28], 0
mov dword [ebp - 0xd84], esi
mov dword [ebp - 0xd88], edi
mov byte [ebp - 0xd98], 0
mov dword [ebp - 0xd68], esi
mov dword [ebp - 0xd6c], edi
mov byte [ebp - 0xd7c], 0
mov dword [ebp - 0xdbc], esi
mov dword [ebp - 0xdc0], edi
mov byte [ebp - 0xdd0], 0
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0xd0c]
push ecx
mov byte [ebp - 4], 8
mov dword [ebp - 0xdd8], edi
call fcn.0040d1c0
add esp, 8
push eax
lea ecx, [ebp - 0xd28]
mov byte [ebp - 4], 9
call fcn.00405b40
cmp dword [ebp - 0xcf8], 0x10
mov byte [ebp - 4], 8
jb 0x40e8db
mov edx, dword [ebp - 0xd0c]
push edx
call fcn.0042ac29
add esp, 4
push 0x445a20
call fcn.0042c850
mov ebx, eax
mov eax, dword [ebp - 0xd18]
mov esi, 8
add esp, 4
cmp eax, esi
jae 0x40e8fb
mov esi, eax
mov eax, esi
cmp esi, ebx
jb 0x40e903
mov eax, ebx
cmp dword [ebp - 0xd14], 0x10
mov ecx, dword [ebp - 0xd28]
jae 0x40e918
lea ecx, [ebp - 0xd28]
push eax
push 0x445a20
push ecx
call fcn.0042ad19
add esp, 0xc
cmp eax, edi
jne 0x40e946
cmp esi, ebx
jb 0x40e946
xor eax, eax
cmp esi, ebx
setne al
cmp eax, edi
jne 0x40e946
mov dword [ebp - 0xdd8], 8
jmp 0x40e9af
push 0x4458bc
call fcn.0042c850
mov ebx, eax
mov eax, dword [ebp - 0xd18]
mov esi, 7
add esp, 4
cmp eax, esi
jae 0x40e966
mov esi, eax
mov eax, esi
cmp esi, ebx
jb 0x40e96e
mov eax, ebx
cmp dword [ebp - 0xd14], 0x10
mov ecx, dword [ebp - 0xd28]
jae 0x40e983
lea ecx, [ebp - 0xd28]
push eax
push 0x4458bc
push ecx
call fcn.0042ad19
add esp, 0xc
cmp eax, edi
jne 0x40e9af
cmp esi, ebx
jb 0x40e9af
xor eax, eax
cmp esi, ebx
setne al
cmp eax, edi
jne 0x40e9af
mov dword [ebp - 0xdd8], 7
mov eax, dword [ebp - 0xdd8]
push 1
inc eax
push eax
lea ecx, [ebp - 0xddc]
push ecx
lea ecx, [ebp - 0xd28]
mov byte [ebp - 0xddc], 0x2f
call fcn.0040b0d0
mov esi, eax
cmp esi, 0xffffffff
jne 0x40ea1f
push str.eJeO8_SMcCdUA
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.0042c850
add esp, 4
push eax
push str.eJeO8_SMcCdUA
lea ecx, [ebp - 0xcf0]
call fcn.00405a00
lea eax, [ebp - 0xcf0]
mov byte [ebp - 4], 0xa
mov ebx, 1
jmp 0x40ea40
push 0xffffffffffffffff
push esi
lea edx, [ebp - 0xd0c]
push edx
lea ecx, [ebp - 0xd28]
call fcn.0040de90
mov dword [ebp - 4], 0xb
mov ebx, 2
push eax
lea ecx, [ebp - 0xd44]
mov dword [ebp - 0xdd4], ebx
call fcn.00405b40
test bl, 2
je 0x40ea8f
and ebx, 0xfffffffd
cmp dword [ebp - 0xcf8], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ea78
mov eax, dword [ebp - 0xd0c]
push eax
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcf8], 0xf
mov dword [ebp - 0xcfc], edi
mov byte [ebp - 0xd0c], 0
mov dword [ebp - 4], 8
test bl, 1
je 0x40eabc
and ebx, 0xfffffffe
cmp dword [ebp - 0xcdc], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40eabc
mov ecx, dword [ebp - 0xcf0]
push ecx
call fcn.0042ac29
add esp, 4
mov eax, dword [ebp - 0xd28]
mov edx, dword [ebp - 0xd14]
mov ecx, eax
cmp esi, 0xffffffff
je 0x40eade
cmp edx, 0x10
jae 0x40eada
lea ecx, [ebp - 0xd28]
add ecx, esi
jmp 0x40eaef
cmp edx, 0x10
jae 0x40eae9
lea ecx, [ebp - 0xd28]
add ecx, dword [ebp - 0xd18]
cmp edx, 0x10
jae 0x40eafa
lea eax, [ebp - 0xd28]
mov edx, dword [ebp - 0xde8]
add eax, dword [ebp - 0xdd8]
push edx
push ecx
mov esi, 0xf
push eax
lea ecx, [ebp - 0xcf0]
mov dword [ebp - 0xcdc], esi
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.0040b4b0
lea eax, [ebp - 0xcf0]
push eax
lea ecx, [ebp - 0xd60]
mov byte [ebp - 4], 0xc
call fcn.00405b40
cmp dword [ebp - 0xcdc], 0x10
mov byte [ebp - 4], 8
jb 0x40eb5e
mov ecx, dword [ebp - 0xcf0]
push ecx
call fcn.0042ac29
add esp, 4
push 0x445a1c
call fcn.0042c850
add esp, 4
push eax
push edi
push 0x445a1c
lea ecx, [ebp - 0xd44]
call fcn.0040b0d0
cmp eax, 0xffffffff
je 0x40eb9f
push eax
push edi
lea edx, [ebp - 0xd0c]
push edx
lea ecx, [ebp - 0xd44]
call fcn.0040de90
mov byte [ebp - 4], 0xd
or ebx, 4
jmp 0x40ebd7
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0xd44]
push eax
lea ecx, [ebp - 0xcf0]
mov dword [ebp - 0xcdc], esi
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.00405910
lea eax, [ebp - 0xcf0]
mov dword [ebp - 4], 0xe
or ebx, 8
push eax
lea ecx, [ebp - 0xd44]
mov dword [ebp - 0xdd4], ebx
call fcn.00405b40
test bl, 8
je 0x40ec22
and ebx, 0xfffffff7
cmp dword [ebp - 0xcdc], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ec0f
mov ecx, dword [ebp - 0xcf0]
push ecx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcdc], esi
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
mov dword [ebp - 4], 8
test bl, 4
je 0x40ec4f
and ebx, 0xfffffffb
cmp dword [ebp - 0xcf8], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ec4f
mov edx, dword [ebp - 0xd0c]
push edx
call fcn.0042ac29
add esp, 4
push 0x4458a0
call fcn.0042c850
add esp, 4
push eax
push edi
push 0x4458a0
lea ecx, [ebp - 0xd60]
call fcn.0040b0d0
mov esi, eax
cmp esi, 0xffffffff
je 0x40ec96
push 0xffffffffffffffff
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0xd0c]
push ecx
lea ecx, [ebp - 0xd60]
call fcn.0040de90
mov byte [ebp - 4], 0xf
or ebx, 0x10
jmp 0x40ecdb
push str.eJeO8_SMcCdUA
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.0042c850
add esp, 4
push eax
push str.eJeO8_SMcCdUA
lea ecx, [ebp - 0xcf0]
call fcn.00405a00
lea eax, [ebp - 0xcf0]
mov dword [ebp - 4], 0x10
or ebx, 0x20
push eax
lea ecx, [ebp - 0xd7c]
mov dword [ebp - 0xdd4], ebx
call fcn.00405b40
test bl, 0x20
je 0x40ed2a
and ebx, 0xffffffdf
cmp dword [ebp - 0xcdc], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ed13
mov edx, dword [ebp - 0xcf0]
push edx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
mov dword [ebp - 4], 8
test bl, 0x10
je 0x40ed57
and ebx, 0xffffffef
cmp dword [ebp - 0xcf8], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ed57
mov eax, dword [ebp - 0xd0c]
push eax
call fcn.0042ac29
add esp, 4
cmp esi, 0xffffffff
jne 0x40ed62
mov esi, dword [ebp - 0xd50]
push esi
push edi
lea ecx, [ebp - 0xd0c]
push ecx
lea ecx, [ebp - 0xd60]
call fcn.0040de90
push eax
lea ecx, [ebp - 0xd60]
mov byte [ebp - 4], 0x11
call fcn.00405b40
cmp dword [ebp - 0xcf8], 0x10
mov byte [ebp - 4], 8
jb 0x40eda2
mov edx, dword [ebp - 0xd0c]
push edx
call fcn.0042ac29
add esp, 4
mov eax, dword [ebp - 0xdd8]
cmp eax, edi
jle 0x40edcc
add eax, 0xfffffffd
push eax
push edi
lea eax, [ebp - 0xd0c]
push eax
lea ecx, [ebp - 0xd28]
call fcn.0040de90
mov byte [ebp - 4], 0x12
or ebx, 0x40
jmp 0x40ee14
push str.eJeO8_SMcCdUA
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.0042c850
add esp, 4
push eax
push str.eJeO8_SMcCdUA
lea ecx, [ebp - 0xcf0]
call fcn.00405a00
lea eax, [ebp - 0xcf0]
mov dword [ebp - 4], 0x13
or ebx, 0x80
push eax
lea ecx, [ebp - 0xd98]
mov dword [ebp - 0xdd4], ebx
call fcn.00405b40
test bl, bl
jns 0x40ee65
and ebx, 0xffffff7f
cmp dword [ebp - 0xcdc], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ee4e
mov ecx, dword [ebp - 0xcf0]
push ecx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
mov dword [ebp - 4], 8
test bl, 0x40
je 0x40ee92
and ebx, 0xffffffbf
cmp dword [ebp - 0xcf8], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ee92
mov edx, dword [ebp - 0xd0c]
push edx
call fcn.0042ac29
add esp, 4
push 0x445a18
call fcn.0042c850
add esp, 4
push eax
push edi
push 0x445a18
lea ecx, [ebp - 0xd44]
call fcn.0040b0d0
mov esi, eax
cmp esi, 0xffffffff
je 0x40eedc
push 0xffffffffffffffff
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0xd0c]
push ecx
lea ecx, [ebp - 0xd44]
call fcn.0040de90
mov byte [ebp - 4], 0x14
or ebx, 0x100
jmp 0x40ef24
push str.eJeO8_SMcCdUA
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.0042c850
add esp, 4
push eax
push str.eJeO8_SMcCdUA
lea ecx, [ebp - 0xcf0]
call fcn.00405a00
lea eax, [ebp - 0xcf0]
mov dword [ebp - 4], 0x15
or ebx, 0x200
push eax
lea ecx, [ebp - 0xdd0]
mov dword [ebp - 0xdd4], ebx
call fcn.00405b40
test ebx, 0x200
je 0x40ef79
and ebx, 0xfffffdff
cmp dword [ebp - 0xcdc], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40ef62
mov edx, dword [ebp - 0xcf0]
push edx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
mov dword [ebp - 4], 8
test ebx, 0x100
je 0x40efac
and ebx, 0xfffffeff
cmp dword [ebp - 0xcf8], 0x10
mov dword [ebp - 0xdd4], ebx
jb 0x40efac
mov eax, dword [ebp - 0xd0c]
push eax
call fcn.0042ac29
add esp, 4
cmp esi, 0xffffffff
je 0x40efd1
push esi
push edi
lea ecx, [ebp - 0xd0c]
push ecx
lea ecx, [ebp - 0xd44]
call fcn.0040de90
mov byte [ebp - 4], 0x16
or ebx, 0x400
jmp 0x40f010
push 0xffffffffffffffff
push edi
lea edx, [ebp - 0xd44]
push edx
lea ecx, [ebp - 0xcf0]
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
call fcn.00405910
lea eax, [ebp - 0xcf0]
mov dword [ebp - 4], 0x17
or ebx, 0x800
push eax
lea ecx, [ebp - 0xd44]
mov dword [ebp - 0xdd4], ebx
call fcn.00405b40
mov esi, 0x10
test ebx, 0x800
je 0x40f063
and ebx, 0xfffff7ff
cmp dword [ebp - 0xcdc], esi
jb 0x40f04c
mov eax, dword [ebp - 0xcf0]
push eax
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcdc], 0xf
mov dword [ebp - 0xce0], edi
mov byte [ebp - 0xcf0], 0
mov dword [ebp - 4], 8
test ebx, 0x400
je 0x40f089
cmp dword [ebp - 0xcf8], esi
jb 0x40f089
mov ecx, dword [ebp - 0xd0c]
push ecx
call fcn.0042ac29
add esp, 4
mov eax, dword [ebp - 0xd60]
cmp dword [ebp - 0xd4c], esi
jae 0x40f09d
lea eax, [ebp - 0xd60]
push eax
call dword [0x46d69c]
mov eax, dword [ebp + 0xc]
cmp dword [ebp + 0x20], esi
jae 0x40f0af
lea eax, [ebp + 0xc]
push eax
call dword [0x46d69c]
cmp dword [ebp + 0x28], edi
je 0x40f12c
lea edx, [ebp - 0xd0c]
push edx
lea ecx, [ebp - 0xde1]
call fcn.00420bb0
mov byte [ebp - 4], 0x18
cmp dword [eax + 0x14], esi
jb 0x40f0d8
mov eax, dword [eax]
push 0
push 0
push 0
push 0
push eax
call dword [0x46d6bc]
mov esi, 0x10
mov edi, eax
mov dword [ebp - 0xdd8], edi
mov byte [ebp - 4], 8
cmp dword [ebp - 0xcf8], esi
jb 0x40f10f
mov eax, dword [ebp - 0xd0c]
push eax
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xcf8], 0xf
mov dword [ebp - 0xcfc], 0
mov byte [ebp - 0xd0c], 0
jmp 0x40f153
mov eax, dword [ebp + 0x2c]
cmp dword [ebp + 0x40], esi
jae 0x40f137
lea eax, [ebp + 0x2c]
push 0
push 0
push 0
push 0
push eax
call dword [0x46d6bc]
mov edi, eax
mov dword [ebp - 0xdd8], eax
mov esi, 0x10
mov eax, dword [ebp - 0xd7c]
cmp dword [ebp - 0xd68], esi
jae 0x40f167
lea eax, [ebp - 0xd7c]
push eax
call fcn.0042d9c0
add esp, 4
mov ebx, eax
mov eax, dword [ebp - 0xd98]
cmp dword [ebp - 0xd84], esi
jae 0x40f186
lea eax, [ebp - 0xd98]
push 0x445a10
push eax
call dword [0x46d7b0]
mov esi, eax
neg esi
sbb esi, esi
and esi, 0xff800000
add esi, 0x4800000
test edi, edi
je 0x40f3a3
cmp dword [ebp - 0xd4c], 0x10
mov eax, dword [ebp - 0xd60]
jae 0x40f1c1
lea eax, [ebp - 0xd60]
mov ecx, dword [ebp - 0xdd8]
push 0
push esi
push 3
push 0
push 0
push ebx
push eax
push ecx
call dword [0x46d7d8]
mov edi, eax
test edi, edi
je 0x40f396
cmp dword [ebp - 0xd30], 0x10
mov eax, dword [ebp - 0xd44]
jae 0x40f1f8
lea eax, [ebp - 0xd44]
push 0
push esi
push 0
push 0
push 0
push eax
push 0x445a0c
push edi
call dword [0x46d81c]
mov esi, eax
test esi, esi
je 0x40f38f
push 0
push 0
push 0
push 0
push esi
call dword [0x46d79c]
push 0
lea edx, [ebp - 0xde8]
push edx
mov ebx, eax
lea eax, [ebp - 0x110]
push eax
push 0x13
push esi
mov dword [ebp - 0xde8], 0x100
call dword [0x46d834]
test eax, eax
jne 0x40f2c6
mov esi, dword [ebp - 0xde0]
push 0x445a04
mov ecx, esi
call fcn.00405b00
lea ecx, [ebp - 0xdd0]
call fcn.0040b280
lea ecx, [ebp - 0xd7c]
call fcn.0040b280
lea ecx, [ebp - 0xd98]
call fcn.0040b280
lea ecx, [ebp - 0xd28]
call fcn.0040b280
lea ecx, [ebp - 0xd60]
call fcn.0040b280
lea ecx, [ebp - 0xd44]
call fcn.0040b280
lea ecx, [ebp - 0xdb4]
call fcn.0040b280
lea ecx, [ebp + 0xc]
call fcn.0040b280
lea ecx, [ebp + 0x2c]
call fcn.0040b280
mov eax, esi
jmp 0x40f521
lea ecx, [ebp - 0x110]
push ecx
call fcn.0042d9c0
add esp, 4
cmp eax, 0xc8
jne 0x40f250
test ebx, ebx
je 0x40f388
lea edx, [ebp - 0xdd4]
push edx
push 0x7cf
lea eax, [ebp - 0x8e0]
push eax
push esi
call dword [0x46d6e0]
test eax, eax
je 0x40f388
mov bl, 0x19
lea esp, [esp]
mov eax, dword [ebp - 0xdd4]
test eax, eax
je 0x40f388
lea ecx, [ebp - 0x8e0]
push ecx
lea edx, [ebp - 0xdb4]
mov byte [ebp + eax - 0x8e0], 0
push edx
lea eax, [ebp - 0xcf0]
push eax
call fcn.0040df20
add esp, 0xc
push eax
lea ecx, [ebp - 0xdb4]
mov byte [ebp - 4], bl
call fcn.00405b40
cmp dword [ebp - 0xcdc], 0x10
mov byte [ebp - 4], 8
jb 0x40f36a
mov ecx, dword [ebp - 0xcf0]
push ecx
call fcn.0042ac29
add esp, 4
lea edx, [ebp - 0xdd4]
push edx
push 0x7cf
lea eax, [ebp - 0x8e0]
push eax
push esi
call dword [0x46d6e0]
test eax, eax
jne 0x40f310
push esi
call dword [0x46d6b8]
push edi
call dword [0x46d6b8]
mov ecx, dword [ebp - 0xdd8]
push ecx
call dword [0x46d6b8]
mov ecx, dword [ebp - 0xde0]
xor ebx, ebx
lea edx, [ebp - 0xdb4]
mov edi, 0xf
mov dword [ecx + 0x14], edi
mov dword [ecx + 0x10], ebx
push edx
mov esi, 0x10
mov byte [ecx], bl
call fcn.00405b40
cmp dword [ebp - 0xdbc], esi
jb 0x40f3e0
mov eax, dword [ebp - 0xdd0]
push eax
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xdbc], edi
mov dword [ebp - 0xdc0], ebx
mov byte [ebp - 0xdd0], 0
cmp dword [ebp - 0xd68], esi
jb 0x40f40a
mov ecx, dword [ebp - 0xd7c]
push ecx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xd68], edi
mov dword [ebp - 0xd6c], ebx
mov byte [ebp - 0xd7c], 0
cmp dword [ebp - 0xd84], esi
jb 0x40f434
mov edx, dword [ebp - 0xd98]
push edx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xd84], edi
mov dword [ebp - 0xd88], ebx
mov byte [ebp - 0xd98], 0
cmp dword [ebp - 0xd14], esi
jb 0x40f45e
mov eax, dword [ebp - 0xd28]
push eax
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xd14], edi
mov dword [ebp - 0xd18], ebx
mov byte [ebp - 0xd28], 0
cmp dword [ebp - 0xd4c], esi
jb 0x40f488
mov ecx, dword [ebp - 0xd60]
push ecx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xd4c], edi
mov dword [ebp - 0xd50], ebx
mov byte [ebp - 0xd60], 0
cmp dword [ebp - 0xd30], esi
jb 0x40f4b2
mov edx, dword [ebp - 0xd44]
push edx
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xd30], edi
mov dword [ebp - 0xd34], ebx
mov byte [ebp - 0xd44], 0
cmp dword [ebp - 0xda0], esi
jb 0x40f4dc
mov eax, dword [ebp - 0xdb4]
push eax
call fcn.0042ac29
add esp, 4
mov dword [ebp - 0xda0], edi
mov dword [ebp - 0xda4], ebx
mov byte [ebp - 0xdb4], 0
cmp dword [ebp + 0x20], esi
jb 0x40f500
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0042ac29
add esp, 4
mov dword [ebp + 0x20], edi
mov dword [ebp + 0x1c], ebx
mov byte [ebp + 0xc], 0
cmp dword [ebp + 0x40], esi
jb 0x40f51b
mov edx, dword [ebp + 0x2c]
push edx
call fcn.0042ac29
add esp, 4
mov eax, dword [ebp - 0xde0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042ad0a
mov esp, ebp
pop ebp
ret