Function at 0x40e400
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43da6b
mov eax, dword fs:[0]
push eax
sub esp, 0xa20
mov eax, dword [0x4506f0]
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 - 0xa28], eax
mov dword [ebp - 0xa18], edi
mov esi, 0xf
push 0x4452c4
mov dword [ebp - 4], 1
mov dword [ebp - 0x9ac], esi
mov dword [ebp - 0x9b0], edi
mov byte [ebp - 0x9c0], 0
call fcn.004299d0
add esp, 4
push eax
push 0x4452c4
lea ecx, [ebp - 0x9c0]
call fcn.004056f0
mov dword [ebp - 0x93c], esi
mov dword [ebp - 0x940], edi
mov byte [ebp - 0x950], 0
mov dword [ebp - 0x958], esi
mov dword [ebp - 0x95c], edi
mov byte [ebp - 0x96c], 0
mov dword [ebp - 0x904], esi
mov dword [ebp - 0x908], edi
mov byte [ebp - 0x918], 0
mov dword [ebp - 0x990], esi
mov dword [ebp - 0x994], edi
mov byte [ebp - 0x9a4], 0
mov dword [ebp - 0x974], esi
mov dword [ebp - 0x978], edi
mov byte [ebp - 0x988], 0
mov dword [ebp - 0x9e4], esi
mov dword [ebp - 0x9e8], edi
mov byte [ebp - 0x9f8], 0
lea ecx, [ebp + 0xc]
push ecx
lea edx, [ebp - 0x934]
push edx
mov byte [ebp - 4], 8
mov dword [ebp - 0xa1c], edi
call fcn.0040ce20
add esp, 8
push eax
lea ecx, [ebp - 0x918]
mov byte [ebp - 4], 9
call fcn.00405830
cmp dword [ebp - 0x920], 0x10
mov byte [ebp - 4], 8
jb 0x40e537
mov eax, dword [ebp - 0x934]
push eax
call fcn.004298d9
add esp, 4
push str.https:__
call fcn.004299d0
mov ebx, eax
mov eax, dword [ebp - 0x908]
mov esi, 8
add esp, 4
cmp eax, esi
jae 0x40e557
mov esi, eax
mov eax, esi
cmp esi, ebx
jb 0x40e55f
mov eax, ebx
cmp dword [ebp - 0x904], 0x10
mov ecx, dword [ebp - 0x918]
jae 0x40e574
lea ecx, [ebp - 0x918]
push eax
push str.https:__
push ecx
call fcn.0042aecb
add esp, 0xc
cmp eax, edi
jne 0x40e5a2
cmp esi, ebx
jb 0x40e5a2
xor eax, eax
cmp esi, ebx
setne al
cmp eax, edi
jne 0x40e5a2
mov dword [ebp - 0xa1c], 8
jmp 0x40e60b
push str.http:__
call fcn.004299d0
mov ebx, eax
mov eax, dword [ebp - 0x908]
mov esi, 7
add esp, 4
cmp eax, esi
jae 0x40e5c2
mov esi, eax
mov eax, esi
cmp esi, ebx
jb 0x40e5ca
mov eax, ebx
cmp dword [ebp - 0x904], 0x10
mov ecx, dword [ebp - 0x918]
jae 0x40e5df
lea ecx, [ebp - 0x918]
push eax
push str.http:__
push ecx
call fcn.0042aecb
add esp, 0xc
cmp eax, edi
jne 0x40e60b
cmp esi, ebx
jb 0x40e60b
xor eax, eax
cmp esi, ebx
setne al
cmp eax, edi
jne 0x40e60b
mov dword [ebp - 0xa1c], 7
mov ecx, dword [ebp - 0xa1c]
push 1
inc ecx
push ecx
lea edx, [ebp - 0xa20]
push edx
lea ecx, [ebp - 0x918]
mov byte [ebp - 0xa20], 0x2f
call fcn.0040ad90
mov esi, eax
cmp esi, 0xffffffff
jne 0x40e67b
push 0x4452c4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.004299d0
add esp, 4
push eax
push 0x4452c4
lea ecx, [ebp - 0x8fc]
call fcn.004056f0
lea eax, [ebp - 0x8fc]
mov byte [ebp - 4], 0xa
mov ebx, 1
jmp 0x40e69c
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x9dc]
push eax
lea ecx, [ebp - 0x918]
call fcn.0040db10
mov dword [ebp - 4], 0xb
mov ebx, 2
push eax
lea ecx, [ebp - 0x950]
mov dword [ebp - 0xa18], ebx
call fcn.00405830
test bl, 2
je 0x40e6eb
and ebx, 0xfffffffd
cmp dword [ebp - 0x9c8], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40e6d4
mov ecx, dword [ebp - 0x9dc]
push ecx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x9c8], 0xf
mov dword [ebp - 0x9cc], edi
mov byte [ebp - 0x9dc], 0
mov dword [ebp - 4], 8
test bl, 1
je 0x40e718
and ebx, 0xfffffffe
cmp dword [ebp - 0x8e8], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40e718
mov edx, dword [ebp - 0x8fc]
push edx
call fcn.004298d9
add esp, 4
mov eax, dword [ebp - 0x918]
mov edx, dword [ebp - 0x904]
mov ecx, eax
cmp esi, 0xffffffff
je 0x40e73a
cmp edx, 0x10
jae 0x40e736
lea ecx, [ebp - 0x918]
add ecx, esi
jmp 0x40e74b
cmp edx, 0x10
jae 0x40e745
lea ecx, [ebp - 0x918]
add ecx, dword [ebp - 0x908]
cmp edx, 0x10
jae 0x40e756
lea eax, [ebp - 0x918]
mov edx, dword [ebp - 0xa2c]
add eax, dword [ebp - 0xa1c]
push edx
push ecx
mov esi, 0xf
push eax
lea ecx, [ebp - 0x8fc]
mov dword [ebp - 0x8e8], esi
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.0040b140
lea eax, [ebp - 0x8fc]
push eax
lea ecx, [ebp - 0x96c]
mov byte [ebp - 4], 0xc
call fcn.00405830
cmp dword [ebp - 0x8e8], 0x10
mov byte [ebp - 4], 8
jb 0x40e7ba
mov ecx, dword [ebp - 0x8fc]
push ecx
call fcn.004298d9
add esp, 4
push 0x447034
call fcn.004299d0
add esp, 4
push eax
push edi
push 0x447034
lea ecx, [ebp - 0x950]
call fcn.0040ad90
cmp eax, 0xffffffff
je 0x40e7fb
push eax
push edi
lea edx, [ebp - 0x934]
push edx
lea ecx, [ebp - 0x950]
call fcn.0040db10
mov byte [ebp - 4], 0xd
or ebx, 4
jmp 0x40e833
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0x950]
push eax
lea ecx, [ebp - 0x8fc]
mov dword [ebp - 0x8e8], esi
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.00405600
lea eax, [ebp - 0x8fc]
mov dword [ebp - 4], 0xe
or ebx, 8
push eax
lea ecx, [ebp - 0x950]
mov dword [ebp - 0xa18], ebx
call fcn.00405830
test bl, 8
je 0x40e87e
and ebx, 0xfffffff7
cmp dword [ebp - 0x8e8], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40e86b
mov ecx, dword [ebp - 0x8fc]
push ecx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x8e8], esi
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
mov dword [ebp - 4], 8
test bl, 4
je 0x40e8ab
and ebx, 0xfffffffb
cmp dword [ebp - 0x920], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40e8ab
mov edx, dword [ebp - 0x934]
push edx
call fcn.004298d9
add esp, 4
push 0x446eb0
call fcn.004299d0
add esp, 4
push eax
push edi
push 0x446eb0
lea ecx, [ebp - 0x96c]
call fcn.0040ad90
mov esi, eax
cmp esi, 0xffffffff
je 0x40e8f2
push 0xffffffffffffffff
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0x934]
push ecx
lea ecx, [ebp - 0x96c]
call fcn.0040db10
mov byte [ebp - 4], 0xf
or ebx, 0x10
jmp 0x40e937
push 0x4452c4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.004299d0
add esp, 4
push eax
push 0x4452c4
lea ecx, [ebp - 0x8fc]
call fcn.004056f0
lea eax, [ebp - 0x8fc]
mov dword [ebp - 4], 0x10
or ebx, 0x20
push eax
lea ecx, [ebp - 0x988]
mov dword [ebp - 0xa18], ebx
call fcn.00405830
test bl, 0x20
je 0x40e986
and ebx, 0xffffffdf
cmp dword [ebp - 0x8e8], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40e96f
mov edx, dword [ebp - 0x8fc]
push edx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
mov dword [ebp - 4], 8
test bl, 0x10
je 0x40e9b3
and ebx, 0xffffffef
cmp dword [ebp - 0x920], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40e9b3
mov eax, dword [ebp - 0x934]
push eax
call fcn.004298d9
add esp, 4
cmp esi, 0xffffffff
jne 0x40e9be
mov esi, dword [ebp - 0x95c]
push esi
push edi
lea ecx, [ebp - 0x934]
push ecx
lea ecx, [ebp - 0x96c]
call fcn.0040db10
push eax
lea ecx, [ebp - 0x96c]
mov byte [ebp - 4], 0x11
call fcn.00405830
cmp dword [ebp - 0x920], 0x10
mov byte [ebp - 4], 8
jb 0x40e9fe
mov edx, dword [ebp - 0x934]
push edx
call fcn.004298d9
add esp, 4
mov eax, dword [ebp - 0xa1c]
cmp eax, edi
jle 0x40ea28
add eax, 0xfffffffd
push eax
push edi
lea eax, [ebp - 0x934]
push eax
lea ecx, [ebp - 0x918]
call fcn.0040db10
mov byte [ebp - 4], 0x12
or ebx, 0x40
jmp 0x40ea70
push 0x4452c4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.004299d0
add esp, 4
push eax
push 0x4452c4
lea ecx, [ebp - 0x8fc]
call fcn.004056f0
lea eax, [ebp - 0x8fc]
mov dword [ebp - 4], 0x13
or ebx, 0x80
push eax
lea ecx, [ebp - 0x9a4]
mov dword [ebp - 0xa18], ebx
call fcn.00405830
test bl, bl
jns 0x40eac1
and ebx, 0xffffff7f
cmp dword [ebp - 0x8e8], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40eaaa
mov ecx, dword [ebp - 0x8fc]
push ecx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
mov dword [ebp - 4], 8
test bl, 0x40
je 0x40eaee
and ebx, 0xffffffbf
cmp dword [ebp - 0x920], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40eaee
mov edx, dword [ebp - 0x934]
push edx
call fcn.004298d9
add esp, 4
push 0x447030
call fcn.004299d0
add esp, 4
push eax
push edi
push 0x447030
lea ecx, [ebp - 0x950]
call fcn.0040ad90
mov esi, eax
cmp esi, 0xffffffff
je 0x40eb38
push 0xffffffffffffffff
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0x934]
push ecx
lea ecx, [ebp - 0x950]
call fcn.0040db10
mov byte [ebp - 4], 0x14
or ebx, 0x100
jmp 0x40eb80
push 0x4452c4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.004299d0
add esp, 4
push eax
push 0x4452c4
lea ecx, [ebp - 0x8fc]
call fcn.004056f0
lea eax, [ebp - 0x8fc]
mov dword [ebp - 4], 0x15
or ebx, 0x200
push eax
lea ecx, [ebp - 0x9f8]
mov dword [ebp - 0xa18], ebx
call fcn.00405830
test ebx, 0x200
je 0x40ebd5
and ebx, 0xfffffdff
cmp dword [ebp - 0x8e8], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40ebbe
mov edx, dword [ebp - 0x8fc]
push edx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
mov dword [ebp - 4], 8
test ebx, 0x100
je 0x40ec08
and ebx, 0xfffffeff
cmp dword [ebp - 0x920], 0x10
mov dword [ebp - 0xa18], ebx
jb 0x40ec08
mov eax, dword [ebp - 0x934]
push eax
call fcn.004298d9
add esp, 4
cmp esi, 0xffffffff
je 0x40ec2d
push esi
push edi
lea ecx, [ebp - 0x934]
push ecx
lea ecx, [ebp - 0x950]
call fcn.0040db10
mov byte [ebp - 4], 0x16
or ebx, 0x400
jmp 0x40ec6c
push 0xffffffffffffffff
push edi
lea edx, [ebp - 0x950]
push edx
lea ecx, [ebp - 0x8fc]
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
call fcn.00405600
lea eax, [ebp - 0x8fc]
mov dword [ebp - 4], 0x17
or ebx, 0x800
push eax
lea ecx, [ebp - 0x950]
mov dword [ebp - 0xa18], ebx
call fcn.00405830
mov esi, 0x10
test ebx, 0x800
je 0x40ecbf
and ebx, 0xfffff7ff
cmp dword [ebp - 0x8e8], esi
jb 0x40eca8
mov eax, dword [ebp - 0x8fc]
push eax
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x8e8], 0xf
mov dword [ebp - 0x8ec], edi
mov byte [ebp - 0x8fc], 0
mov dword [ebp - 4], 8
test ebx, 0x400
je 0x40ece5
cmp dword [ebp - 0x920], esi
jb 0x40ece5
mov ecx, dword [ebp - 0x934]
push ecx
call fcn.004298d9
add esp, 4
mov eax, dword [ebp - 0x96c]
cmp dword [ebp - 0x958], esi
jae 0x40ecf9
lea eax, [ebp - 0x96c]
push eax
call dword [0x462f54]
mov eax, dword [ebp + 0xc]
cmp dword [ebp + 0x20], esi
jae 0x40ed0b
lea eax, [ebp + 0xc]
push eax
call dword [0x462f54]
cmp dword [ebp + 0x28], edi
je 0x40ed88
lea edx, [ebp - 0x9dc]
push edx
lea ecx, [ebp - 0xa21]
call fcn.0041f8a0
mov byte [ebp - 4], 0x18
cmp dword [eax + 0x14], esi
jb 0x40ed34
mov eax, dword [eax]
push 0
push 0
push 0
push 0
push eax
call dword [0x462f74]
mov esi, 0x10
mov edi, eax
mov dword [ebp - 0xa1c], edi
mov byte [ebp - 4], 8
cmp dword [ebp - 0x9c8], esi
jb 0x40ed6b
mov eax, dword [ebp - 0x9dc]
push eax
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x9c8], 0xf
mov dword [ebp - 0x9cc], 0
mov byte [ebp - 0x9dc], 0
jmp 0x40edaf
mov eax, dword [ebp + 0x2c]
cmp dword [ebp + 0x40], esi
jae 0x40ed93
lea eax, [ebp + 0x2c]
push 0
push 0
push 0
push 0
push eax
call dword [0x462f74]
mov edi, eax
mov dword [ebp - 0xa1c], eax
mov esi, 0x10
mov eax, dword [ebp - 0x988]
cmp dword [ebp - 0x974], esi
jae 0x40edc3
lea eax, [ebp - 0x988]
push eax
call fcn.0042c670
add esp, 4
mov ebx, eax
mov eax, dword [ebp - 0x9a4]
cmp dword [ebp - 0x990], esi
jae 0x40ede2
lea eax, [ebp - 0x9a4]
push str.https
push eax
call dword [0x463068]
mov esi, eax
neg esi
sbb esi, esi
and esi, 0xff800000
add esi, 0x4800000
test edi, edi
je 0x40f0a2
cmp dword [ebp - 0x958], 0x10
mov eax, dword [ebp - 0x96c]
jae 0x40ee1d
lea eax, [ebp - 0x96c]
mov ecx, dword [ebp - 0xa1c]
push 0
push esi
push 3
push 0
push 0
push ebx
push eax
push ecx
call dword [0x463090]
mov edi, eax
test edi, edi
je 0x40f095
mov eax, dword [ebp - 0x950]
mov ebx, 0x10
cmp dword [ebp - 0x93c], ebx
jae 0x40ee58
lea eax, [ebp - 0x950]
push 0
push esi
push 0
push 0
push 0
push eax
push 0x447024
push edi
call dword [0x4630d4]
mov esi, eax
test esi, esi
je 0x40f08e
lea edx, [ebp - 0x934]
push edx
lea ecx, [ebp - 0xa21]
call fcn.0040b2f0
push eax
lea eax, [ebp - 0x8fc]
push str.X_Id:
push eax
mov byte [ebp - 4], 0x19
call fcn.004058e0
add esp, 0xc
mov byte [ebp - 4], 0x1b
cmp dword [ebp - 0x920], ebx
jb 0x40eebe
mov ecx, dword [ebp - 0x934]
push ecx
call fcn.004298d9
add esp, 4
mov eax, dword [ebp - 0x8fc]
mov dword [ebp - 0x920], 0xf
mov dword [ebp - 0x924], 0
mov byte [ebp - 0x934], 0
cmp dword [ebp - 0x8e8], ebx
jae 0x40eeed
lea eax, [ebp - 0x8fc]
mov edx, dword [ebp - 0x8ec]
push 0x20000000
push edx
push eax
push esi
call dword [0x462ea4]
push 0
push 0
push 0
push 0
push esi
call dword [0x463054]
push 0
mov ebx, eax
lea eax, [ebp - 0xa2c]
push eax
lea ecx, [ebp - 0x110]
push ecx
push 0x13
push esi
mov dword [ebp - 0xa2c], 0x100
call dword [0x4630ec]
test eax, eax
jne 0x40efbe
mov esi, dword [ebp - 0xa28]
push 0x447014
mov ecx, esi
call fcn.004057f0
lea ecx, [ebp - 0x8fc]
call fcn.00405160
lea ecx, [ebp - 0x9f8]
call fcn.00405160
lea ecx, [ebp - 0x988]
call fcn.00405160
lea ecx, [ebp - 0x9a4]
call fcn.00405160
lea ecx, [ebp - 0x918]
call fcn.00405160
lea ecx, [ebp - 0x96c]
call fcn.00405160
lea ecx, [ebp - 0x950]
call fcn.00405160
lea ecx, [ebp - 0x9c0]
call fcn.00405160
lea ecx, [ebp + 0xc]
call fcn.00405160
lea ecx, [ebp + 0x2c]
call fcn.00405160
mov eax, esi
jmp 0x40f21f
lea edx, [ebp - 0x110]
push edx
call fcn.0042c670
add esp, 4
cmp eax, 0xc8
jne 0x40ef3d
test ebx, ebx
je 0x40f078
lea eax, [ebp - 0xa18]
push eax
push 0x7cf
lea ecx, [ebp - 0x8e0]
push ecx
push esi
call dword [0x462f98]
test eax, eax
je 0x40f078
mov bl, 0x1c
mov eax, dword [ebp - 0xa18]
test eax, eax
je 0x40f078
lea edx, [ebp - 0x8e0]
mov byte [ebp + eax - 0x8e0], 0
push edx
lea eax, [ebp - 0x9c0]
push eax
lea ecx, [ebp - 0xa14]
push ecx
call fcn.0040dba0
add esp, 0xc
push eax
lea ecx, [ebp - 0x9c0]
mov byte [ebp - 4], bl
call fcn.00405830
cmp dword [ebp - 0xa00], 0x10
mov byte [ebp - 4], 0x1b
jb 0x40f05a
mov edx, dword [ebp - 0xa14]
push edx
call fcn.004298d9
add esp, 4
lea eax, [ebp - 0xa18]
push eax
push 0x7cf
lea ecx, [ebp - 0x8e0]
push ecx
push esi
call dword [0x462f98]
test eax, eax
jne 0x40f000
push esi
call dword [0x462f70]
lea ecx, [ebp - 0x8fc]
mov byte [ebp - 4], 8
call fcn.00405160
push edi
call dword [0x462f70]
mov edx, dword [ebp - 0xa1c]
push edx
call dword [0x462f70]
mov ecx, dword [ebp - 0xa28]
mov esi, 0xf
lea eax, [ebp - 0x9c0]
xor edi, edi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], edi
push eax
lea ebx, [esi + 1]
mov byte [ecx], 0
call fcn.00405830
cmp dword [ebp - 0x9e4], ebx
jb 0x40f0de
mov ecx, dword [ebp - 0x9f8]
push ecx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x9e4], esi
mov dword [ebp - 0x9e8], edi
mov byte [ebp - 0x9f8], 0
cmp dword [ebp - 0x974], ebx
jb 0x40f108
mov edx, dword [ebp - 0x988]
push edx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x974], esi
mov dword [ebp - 0x978], edi
mov byte [ebp - 0x988], 0
cmp dword [ebp - 0x990], ebx
jb 0x40f132
mov eax, dword [ebp - 0x9a4]
push eax
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x990], esi
mov dword [ebp - 0x994], edi
mov byte [ebp - 0x9a4], 0
cmp dword [ebp - 0x904], ebx
jb 0x40f15c
mov ecx, dword [ebp - 0x918]
push ecx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x904], esi
mov dword [ebp - 0x908], edi
mov byte [ebp - 0x918], 0
cmp dword [ebp - 0x958], ebx
jb 0x40f186
mov edx, dword [ebp - 0x96c]
push edx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x958], esi
mov dword [ebp - 0x95c], edi
mov byte [ebp - 0x96c], 0
cmp dword [ebp - 0x93c], ebx
jb 0x40f1b0
mov eax, dword [ebp - 0x950]
push eax
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x93c], esi
mov dword [ebp - 0x940], edi
mov byte [ebp - 0x950], 0
cmp dword [ebp - 0x9ac], ebx
jb 0x40f1da
mov ecx, dword [ebp - 0x9c0]
push ecx
call fcn.004298d9
add esp, 4
mov dword [ebp - 0x9ac], esi
mov dword [ebp - 0x9b0], edi
mov byte [ebp - 0x9c0], 0
cmp dword [ebp + 0x20], ebx
jb 0x40f1fe
mov edx, dword [ebp + 0xc]
push edx
call fcn.004298d9
add esp, 4
mov dword [ebp + 0x20], esi
mov dword [ebp + 0x1c], edi
mov byte [ebp + 0xc], 0
cmp dword [ebp + 0x40], ebx
jb 0x40f219
mov eax, dword [ebp + 0x2c]
push eax
call fcn.004298d9
add esp, 4
mov eax, dword [ebp - 0xa28]
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.004299ba
mov esp, ebp
pop ebp
ret