Function at 0xe4e4a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0xec3fb3
mov eax, dword fs:[0]
push eax
sub esp, 0xa8
push ebx
push ebp
push esi
push edi
mov eax, dword [0xee97a0]
xor eax, esp
push eax
lea eax, [esp + 0xbc]
mov dword fs:[0], eax
mov esi, ecx
add esi, 4
xor edi, edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x74], esi
call fcn.00e577b0
mov esi, dword [esp + 0xcc]
add esi, 4
mov dword [esp + 0x70], esi
call fcn.00e577b0
lea eax, [esp + 0x3c]
push eax
call fcn.00e04560
lea ecx, [esp + 0x3c]
mov dword [esp + 0xc4], edi
call fcn.00e4f5b0
lea ecx, [esp + 0x24]
push ecx
call fcn.00e04560
mov byte [esp + 0xc4], 1
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub edx, ecx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
xor esi, esi
add eax, edx
je 0xe4e7f0
xor ebp, ebp
mov dword [esp + 0x18], ebp
cmp esi, eax
jb 0xe4e556
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
cmp dword [ecx + ebp + 0x18], edi
jle 0xe4e7c6
xor ebx, ebx
mov dword [esp + 0x20], edi
jmp 0xe4e570
mov edx, dword [esp + 0x4c]
sub edx, ecx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4e594
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + ebp + 0x70]
sub edx, dword [ecx + ebp + 0x6c]
sar edx, 6
cmp ebx, edx
jae 0xe4e7c6
mov edx, dword [esp + 0x4c]
sub edx, ecx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4e5cb
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + ebp + 0x70]
sub edx, dword [ecx + ebp + 0x6c]
lea edi, [ecx + ebp + 0x6c]
sar edx, 6
cmp ebx, edx
jb 0xe4e5e7
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
mov eax, dword [edi]
mov edx, dword [esp + 0x20]
cmp dword [edx + eax + 0x18], 0
jle 0xe4e697
lea eax, [esp + 0x78]
push eax
mov ecx, 0xede088
call fcn.00e54260
mov byte [esp + 0xc4], 2
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x48]
or dword [esp + 0x1c], 1
sub ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp esi, ecx
jb 0xe4e63c
call fcn.00e6d484
mov edi, dword [esp + 0x48]
mov eax, dword [esp + 0x18]
mov edx, dword [eax + edi + 0x70]
sub edx, dword [eax + edi + 0x6c]
lea ebp, [eax + edi + 0x6c]
sar edx, 6
cmp ebx, edx
jb 0xe4e658
call fcn.00e6d484
mov eax, dword [ebp]
add eax, dword [esp + 0x20]
cmp dword [esp + 0x94], 8
lea ecx, [eax + 4]
mov eax, dword [esp + 0x80]
jae 0xe4e67a
lea eax, [esp + 0x80]
mov edi, dword [esp + 0x90]
push eax
mov eax, dword [ecx + 0x14]
call fcn.00e0c9e0
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x17], 1
test eax, eax
jne 0xe4e69c
mov byte [esp + 0x17], 0
mov edi, 1
mov dword [esp + 0xc4], edi
test byte [esp + 0x1c], 1
je 0xe4e6e0
and dword [esp + 0x1c], 0xfffffffe
sub dword [0xeecc40], edi
cmp dword [esp + 0x94], 8
mov dword [esp + 0x78], 0xede2f8
jb 0xe4e6e0
mov eax, dword [esp + 0x80]
push eax
call fcn.00e6b828
mov ecx, dword [esp + 0x4c]
add esp, 4
cmp byte [esp + 0x17], 0
jne 0xe4e6f9
add dword [esp + 0x20], 0x40
mov ebp, dword [esp + 0x18]
add ebx, edi
xor edi, edi
jmp 0xe4e570
mov edx, dword [esp + 0x4c]
sub edx, ecx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4e71d
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x18]
add ecx, ebp
push ecx
lea edi, [esp + 0x28]
call fcn.00e51660
mov ecx, dword [esp + 0x4c]
sub ecx, dword [esp + 0x48]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4e74f
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + ebp + 0x70]
sub edx, dword [ecx + ebp + 0x6c]
lea edi, [ecx + ebp + 0x60]
sar edx, 6
cmp ebx, edx
jb 0xe4e76b
call fcn.00e6d484
mov ecx, dword [esp + 0x74]
shl ebx, 6
add ebx, dword [edi + 0xc]
push 0xffffffffffffffff
mov eax, ebx
push 0
add eax, 4
push eax
call fcn.00e02510
mov ecx, dword [esp + 0x4c]
sub ecx, dword [esp + 0x48]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4e7a6
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
push 0xffffffffffffffff
lea edx, [ecx + ebp + 4]
mov ecx, dword [esp + 0x74]
push 0
push edx
call fcn.00e02510
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x18]
xor edi, edi
mov edx, dword [esp + 0x4c]
sub edx, ecx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
inc esi
add ebp, 0xc8
add eax, edx
mov dword [esp + 0x18], ebp
cmp esi, eax
jb 0xe4e556
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov edx, ebp
sub edx, ebx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jne 0xe4e88b
cmp ebx, edi
je 0xe4e83c
mov esi, ebx
cmp ebx, ebp
je 0xe4e833
lea esp, [esp]
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebp
jne 0xe4e820
mov ebx, dword [esp + 0x30]
push ebx
call fcn.00e6b828
add esp, 4
mov eax, dword [esp + 0x24]
push eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
call fcn.00e6b828
mov esi, dword [esp + 0x4c]
add esp, 4
cmp esi, edi
je 0xe4e881
mov ebx, dword [esp + 0x4c]
cmp esi, ebx
je 0xe4e878
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebx
jne 0xe4e865
mov esi, dword [esp + 0x48]
push esi
call fcn.00e6b828
add esp, 4
mov ecx, dword [esp + 0x3c]
push ecx
jmp 0xe4f576
cmp eax, edi
jne 0xe4ea22
mov esi, dword [esp + 0x4c]
mov edx, esi
sub edx, ecx
mov eax, 0x51eb851f
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
xor edi, edi
add eax, edx
je 0xe4e8f7
xor ebp, ebp
xor ebx, ebx
cmp edi, eax
jb 0xe4e8c5
call fcn.00e6d484
mov esi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
cmp dword [ebx + ecx + 0x18], ebp
mov eax, 0x51eb851f
jg 0xe4e964
mov edx, esi
sub edx, ecx
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
inc edi
add eax, edx
add ebx, 0xc8
cmp edi, eax
jb 0xe4e8c5
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
xor edi, edi
cmp ebx, edi
je 0xe4e91f
mov esi, ebx
cmp ebx, ebp
je 0xe4e916
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebp
jne 0xe4e903
mov ebx, dword [esp + 0x30]
push ebx
call fcn.00e6b828
add esp, 4
mov ecx, dword [esp + 0x24]
push ecx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
call fcn.00e6b828
mov esi, dword [esp + 0x4c]
add esp, 4
cmp esi, edi
je 0xe4f571
mov ebx, dword [esp + 0x4c]
cmp esi, ebx
je 0xe4f568
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebx
jne 0xe4e950
jmp 0xe4f564
sub esi, ecx
imul esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0xe4e97f
call fcn.00e6d484
mov ecx, dword [esp + 0x48]
imul edi, edi, 0xc8
push 0xffffffffffffffff
lea ecx, [edi + ecx + 4]
push ebp
push ecx
mov ecx, dword [esp + 0x7c]
call fcn.00e02510
mov esi, dword [esp + 0x30]
cmp esi, ebp
je 0xe4e9c2
mov edi, dword [esp + 0x34]
cmp esi, edi
je 0xe4e9b9
call fcn.00e4ff90
add esi, 0xc8
cmp esi, edi
jne 0xe4e9a6
mov esi, dword [esp + 0x30]
push esi
call fcn.00e6b828
add esp, 4
mov edx, dword [esp + 0x24]
push edx
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ebp
call fcn.00e6b828
mov esi, dword [esp + 0x4c]
add esp, 4
cmp esi, ebp
je 0xe4ea0c
mov edi, dword [esp + 0x4c]
cmp esi, edi
je 0xe4ea03
jmp 0xe4e9f0
call fcn.00e4ff90
add esi, 0xc8
cmp esi, edi
jne 0xe4e9f0
mov esi, dword [esp + 0x48]
push esi
call fcn.00e6b828
add esp, 4
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
push eax
jmp 0xe4f582
cmp eax, 1
jbe 0xe4f502
lea eax, [esp + 0x58]
push eax
call fcn.00e04560
mov byte [esp + 0xc4], 3
mov ebp, dword [esp + 0x34]
mov ecx, ebp
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
xor ebx, ebx
add ecx, edx
je 0xe4edad
xor esi, esi
mov dword [esp + 0x54], esi
lea edx, [esp + 0x98]
push edx
mov ecx, 0xede098
call fcn.00e54260
mov byte [esp + 0xc4], 4
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4eaa2
call fcn.00e6d484
mov edx, dword [esp + 0x30]
push 0
lea ecx, [esp + 0x9c]
push ecx
lea ecx, [esi + edx + 0x40]
call fcn.00e55290
mov byte [esp + 0xc4], 3
dec dword [0xeecc40]
cmp dword [esp + 0xb4], 8
mov edi, eax
mov dword [esp + 0x98], 0xede2f8
jb 0xe4eaee
mov eax, dword [esp + 0xa0]
push eax
call fcn.00e6b828
add esp, 4
test edi, edi
jge 0xe4ed7f
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ebx, ecx
jb 0xe4eb18
call fcn.00e6d484
mov edx, dword [esp + 0x30]
cmp dword [esi + edx + 0x18], 0
jle 0xe4ed7f
xor ebp, ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x20], ebp
mov ecx, dword [esp + 0x34]
mov edi, dword [esp + 0x30]
sub ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4eb59
call fcn.00e6d484
mov edi, dword [esp + 0x30]
mov ecx, dword [esi + edi + 0x70]
sub ecx, dword [esi + edi + 0x6c]
sar ecx, 6
cmp ebp, ecx
jae 0xe4ed7f
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4eb8e
call fcn.00e6d484
mov ecx, dword [esp + 0x30]
mov edx, dword [esi + ecx + 0x70]
sub edx, dword [esi + ecx + 0x6c]
lea edi, [esi + ecx + 0x60]
sar edx, 6
cmp ebp, edx
jb 0xe4ebaa
call fcn.00e6d484
mov eax, dword [edi + 0xc]
mov ecx, dword [esp + 0x20]
cmp dword [ecx + eax + 0x18], 0
jle 0xe4ec55
lea edx, [esp + 0x78]
push edx
mov ecx, 0xede088
call fcn.00e54260
mov byte [esp + 0xc4], 5
mov ecx, dword [esp + 0x34]
mov edi, dword [esp + 0x30]
or dword [esp + 0x1c], 2
sub ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4ec00
call fcn.00e6d484
mov edi, dword [esp + 0x30]
mov ecx, dword [esi + edi + 0x70]
sub ecx, dword [esi + edi + 0x6c]
lea ebp, [esi + edi + 0x6c]
sar ecx, 6
cmp dword [esp + 0x18], ecx
jb 0xe4ec1a
call fcn.00e6d484
mov eax, dword [ebp]
add eax, dword [esp + 0x20]
cmp dword [esp + 0x94], 8
lea ecx, [eax + 4]
mov eax, dword [esp + 0x80]
jae 0xe4ec3c
lea eax, [esp + 0x80]
mov edi, dword [esp + 0x90]
push eax
mov eax, dword [ecx + 0x14]
call fcn.00e0c9e0
mov byte [esp + 0x17], 1
test eax, eax
jne 0xe4ec5a
mov byte [esp + 0x17], 0
mov dword [esp + 0xc4], 3
test byte [esp + 0x1c], 2
je 0xe4ec99
and dword [esp + 0x1c], 0xfffffffd
dec dword [0xeecc40]
cmp dword [esp + 0x94], 8
mov dword [esp + 0x78], 0xede2f8
jb 0xe4ec99
mov edx, dword [esp + 0x80]
push edx
call fcn.00e6b828
add esp, 4
cmp byte [esp + 0x17], 0
jne 0xe4ecb2
inc dword [esp + 0x18]
add dword [esp + 0x20], 0x40
mov ebp, dword [esp + 0x18]
jmp 0xe4eb31
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4ecd4
call fcn.00e6d484
mov ecx, dword [esp + 0x30]
add esi, ecx
push esi
lea edi, [esp + 0x5c]
call fcn.00e51660
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4ed06
call fcn.00e6d484
mov ebp, dword [esp + 0x54]
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + ebp + 0x70]
sub edx, dword [ecx + ebp + 0x6c]
mov edi, dword [esp + 0x18]
lea esi, [ecx + ebp + 0x60]
sar edx, 6
cmp edi, edx
jb 0xe4ed2a
call fcn.00e6d484
mov ecx, dword [esp + 0x74]
shl edi, 6
add edi, dword [esi + 0xc]
push 0xffffffffffffffff
mov eax, edi
push 0
add eax, 4
push eax
call fcn.00e02510
mov ecx, dword [esp + 0x34]
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0xe4ed65
call fcn.00e6d484
mov ecx, dword [esp + 0x30]
push 0xffffffffffffffff
lea edx, [ecx + ebp + 4]
mov ecx, dword [esp + 0x74]
push 0
push edx
call fcn.00e02510
mov esi, dword [esp + 0x54]
mov ebp, dword [esp + 0x34]
mov ecx, ebp
sub ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
inc ebx
add esi, 0xc8
add eax, edx
mov dword [esp + 0x54], esi
cmp ebx, eax
jb 0xe4ea66
mov ebx, dword [esp + 0x68]
mov edi, dword [esp + 0x64]
mov ecx, ebx
sub ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jne 0xe4eeb4
xor esi, esi
cmp edi, esi
je 0xe4edfe
mov esi, edi
cmp edi, ebx
je 0xe4edf3
nop
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebx
jne 0xe4ede0
mov edi, dword [esp + 0x64]
push edi
call fcn.00e6b828
add esp, 4
xor esi, esi
mov ecx, dword [esp + 0x58]
push ecx
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
call fcn.00e6b828
mov eax, dword [esp + 0x34]
add esp, 4
cmp eax, esi
je 0xe4ee4e
mov edi, dword [esp + 0x34]
mov esi, eax
cmp eax, edi
je 0xe4ee43
lea esp, [esp]
call fcn.00e4ff90
add esi, 0xc8
cmp esi, edi
jne 0xe4ee30
mov eax, dword [esp + 0x30]
push eax
call fcn.00e6b828
add esp, 4
xor esi, esi
mov edx, dword [esp + 0x24]
push edx
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
call fcn.00e6b828
mov eax, dword [esp + 0x4c]
add esp, 4
cmp eax, esi
je 0xe4ee9e
mov edi, dword [esp + 0x4c]
mov esi, eax
cmp eax, edi
je 0xe4ee93
lea esp, [esp]
call fcn.00e4ff90
add esi, 0xc8
cmp esi, edi
jne 0xe4ee80
mov eax, dword [esp + 0x48]
push eax
call fcn.00e6b828
add esp, 4
xor esi, esi
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
push eax
jmp 0xe4f582
test eax, eax
jne 0xe4efb1
mov esi, dword [esp + 0x30]
mov ecx, ebp
sub ecx, esi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0xe4eee4
call fcn.00e6d484
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov edx, dword [esi + 0x70]
sub edx, dword [esi + 0x6c]
sar edx, 6
test edx, edx
jbe 0xe4ef41
sub ebp, esi
mov ecx, ebp
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0xe4ef11
call fcn.00e6d484
mov esi, dword [esp + 0x30]
mov ecx, dword [esi + 0x70]
sub ecx, dword [esi + 0x6c]
lea edi, [esi + 0x6c]
sar ecx, 6
test ecx, ecx
ja 0xe4ef26
call fcn.00e6d484
mov edx, dword [edi]
mov ecx, dword [esp + 0x74]
push 0xffffffffffffffff
push 0
add edx, 4
push edx
call fcn.00e02510
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
sub ebp, esi
mov ecx, ebp
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0xe4ef61
call fcn.00e6d484
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x70]
push 0xffffffffffffffff
push 0
add esi, 4
push esi
call fcn.00e02510
lea ebx, [esp + 0x58]
call fcn.00e51cc0
mov ecx, dword [esp + 0x58]
push ecx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x24]
call fcn.00e51cc0
mov edx, dword [esp + 0x24]
push edx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x3c]
call fcn.00e51cc0
mov eax, dword [esp + 0x3c]
push eax
jmp 0xe4f582
cmp eax, 1
jbe 0xe4f4e2
lea ecx, [esp + 0x78]
push ecx
call fcn.00e04560
mov byte [esp + 0xc4], 6
mov edi, dword [esp + 0x68]
mov ebp, dword [esp + 0x64]
mov ecx, edi
sub ecx, ebp
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
xor esi, esi
add eax, edx
je 0xe4f344
xor ebx, ebx
mov dword [esp + 0x54], ebx
lea ecx, [esp + 0x98]
push ecx
mov ecx, 0xede0a8
call fcn.00e54260
mov byte [esp + 0xc4], 7
mov ecx, dword [esp + 0x68]
sub ecx, dword [esp + 0x64]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4f033
call fcn.00e6d484
mov edx, dword [esp + 0x64]
push 0
lea ecx, [esp + 0x9c]
push ecx
lea ecx, [ebx + edx + 0x40]
call fcn.00e55290
mov byte [esp + 0xc4], 6
dec dword [0xeecc40]
cmp dword [esp + 0xb4], 8
mov edi, eax
mov dword [esp + 0x98], 0xede2f8
jb 0xe4f07f
mov eax, dword [esp + 0xa0]
push eax
call fcn.00e6b828
add esp, 4
test edi, edi
jge 0xe4f314
mov ecx, dword [esp + 0x68]
sub ecx, dword [esp + 0x64]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp esi, ecx
jb 0xe4f0a9
call fcn.00e6d484
mov edx, dword [esp + 0x64]
cmp dword [ebx + edx + 0x18], 0
jle 0xe4f314
xor ebp, ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x20], ebp
mov ecx, dword [esp + 0x68]
mov edi, dword [esp + 0x64]
sub ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4f0ea
call fcn.00e6d484
mov edi, dword [esp + 0x64]
mov ecx, dword [ebx + edi + 0x70]
sub ecx, dword [ebx + edi + 0x6c]
sar ecx, 6
cmp ebp, ecx
jae 0xe4f314
mov ecx, dword [esp + 0x68]
sub ecx, dword [esp + 0x64]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4f11f
call fcn.00e6d484
mov ecx, dword [esp + 0x64]
mov edx, dword [ebx + ecx + 0x70]
sub edx, dword [ebx + ecx + 0x6c]
lea edi, [ebx + ecx + 0x60]
sar edx, 6
cmp ebp, edx
jb 0xe4f13b
call fcn.00e6d484
mov eax, dword [edi + 0xc]
mov ecx, dword [esp + 0x20]
cmp dword [ecx + eax + 0x18], 0
jle 0xe4f1e8
lea edx, [esp + 0x98]
push edx
mov ecx, 0xede088
call fcn.00e54260
mov byte [esp + 0xc4], 8
mov ecx, dword [esp + 0x68]
mov edi, dword [esp + 0x64]
or dword [esp + 0x1c], 4
sub ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4f194
call fcn.00e6d484
mov edi, dword [esp + 0x64]
mov ecx, dword [ebx + edi + 0x70]
sub ecx, dword [ebx + edi + 0x6c]
lea ebp, [ebx + edi + 0x6c]
sar ecx, 6
cmp dword [esp + 0x18], ecx
jb 0xe4f1ae
call fcn.00e6d484
mov eax, dword [ebp]
add eax, dword [esp + 0x20]
cmp dword [esp + 0xb4], 8
lea ecx, [eax + 4]
mov eax, dword [esp + 0xa0]
jae 0xe4f1d0
lea eax, [esp + 0xa0]
mov edi, dword [esp + 0xb0]
push eax
mov eax, dword [ecx + 0x14]
call fcn.00e0c9e0
test eax, eax
je 0xe4f1e8
mov bl, 1
jmp 0xe4f1ea
xor bl, bl
mov dword [esp + 0xc4], 6
test byte [esp + 0x1c], 4
je 0xe4f22c
and dword [esp + 0x1c], 0xfffffffb
dec dword [0xeecc40]
cmp dword [esp + 0xb4], 8
mov dword [esp + 0x98], 0xede2f8
jb 0xe4f22c
mov edx, dword [esp + 0xa0]
push edx
call fcn.00e6b828
add esp, 4
test bl, bl
jne 0xe4f246
inc dword [esp + 0x18]
add dword [esp + 0x20], 0x40
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x18]
jmp 0xe4f0c2
mov ecx, dword [esp + 0x68]
sub ecx, dword [esp + 0x64]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4f268
call fcn.00e6d484
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x54]
lea edx, [ebx + ecx]
push edx
lea edi, [esp + 0x7c]
call fcn.00e51660
mov ecx, dword [esp + 0x68]
mov ebp, dword [esp + 0x64]
sub ecx, ebp
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0xe4f2a5
call fcn.00e6d484
mov ebp, dword [esp + 0x64]
mov ecx, dword [ebx + ebp + 0x70]
sub ecx, dword [ebx + ebp + 0x6c]
lea edi, [ebx + ebp + 0x6c]
mov ebp, dword [esp + 0x18]
sar ecx, 6
cmp ebp, ecx
jb 0xe4f2c1
call fcn.00e6d484
mov edx, dword [edi]
mov ecx, dword [esp + 0x74]
push 0xffffffffffffffff
shl ebp, 6
push 0
lea eax, [edx + ebp + 4]
push eax
call fcn.00e02510
mov ecx, dword [esp + 0x68]
sub ecx, dword [esp + 0x64]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp esi, ecx
jb 0xe4f2fa
call fcn.00e6d484
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x70]
push 0xffffffffffffffff
push 0
lea eax, [ebx + edx + 4]
push eax
call fcn.00e02510
mov ebx, dword [esp + 0x54]
mov edi, dword [esp + 0x68]
mov ebp, dword [esp + 0x64]
mov ecx, edi
sub ecx, ebp
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
inc esi
add ebx, 0xc8
add ecx, edx
mov dword [esp + 0x54], ebx
cmp esi, ecx
jb 0xe4eff7
mov ecx, dword [esp + 0x88]
sub ecx, dword [esp + 0x84]
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jne 0xe4f3bd
lea ebx, [esp + 0x78]
call fcn.00e51cc0
mov edx, dword [esp + 0x78]
push edx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x58]
call fcn.00e51cc0
mov eax, dword [esp + 0x58]
push eax
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x24]
call fcn.00e51cc0
mov ecx, dword [esp + 0x24]
push ecx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x3c]
call fcn.00e51cc0
mov edx, dword [esp + 0x3c]
push edx
jmp 0xe4f582
test eax, eax
jne 0xe4f4cc
mov ecx, edi
sub ecx, ebp
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0xe4f3e9
call fcn.00e6d484
mov edi, dword [esp + 0x68]
mov ebp, dword [esp + 0x64]
mov ecx, dword [ebp + 0x70]
sub ecx, dword [ebp + 0x6c]
sar ecx, 6
test ecx, ecx
jbe 0xe4f446
sub edi, ebp
mov ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0xe4f416
call fcn.00e6d484
mov ebp, dword [esp + 0x64]
mov ecx, dword [ebp + 0x70]
sub ecx, dword [ebp + 0x6c]
lea esi, [ebp + 0x6c]
sar ecx, 6
test ecx, ecx
ja 0xe4f42b
call fcn.00e6d484
mov edx, dword [esi]
mov ecx, dword [esp + 0x74]
push 0xffffffffffffffff
push 0
add edx, 4
push edx
call fcn.00e02510
mov edi, dword [esp + 0x68]
mov ebp, dword [esp + 0x64]
sub edi, ebp
mov ecx, edi
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0xe4f466
call fcn.00e6d484
mov ebp, dword [esp + 0x64]
mov ecx, dword [esp + 0x70]
push 0xffffffffffffffff
push 0
add ebp, 4
push ebp
call fcn.00e02510
lea ebx, [esp + 0x78]
call fcn.00e51cc0
mov ecx, dword [esp + 0x78]
push ecx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x58]
call fcn.00e51cc0
mov edx, dword [esp + 0x58]
push edx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x24]
call fcn.00e51cc0
mov eax, dword [esp + 0x24]
push eax
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x3c]
call fcn.00e51cc0
mov ecx, dword [esp + 0x3c]
push ecx
jmp 0xe4f582
lea ebx, [esp + 0x78]
call fcn.00e51cc0
mov edx, dword [esp + 0x78]
push edx
call fcn.00e6b828
add esp, 4
lea ebx, [esp + 0x58]
call fcn.00e51cc0
mov eax, dword [esp + 0x58]
push eax
call fcn.00e6b828
mov ebp, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
add esp, 4
xor edi, edi
cmp ebx, edi
je 0xe4f52c
mov esi, ebx
cmp ebx, ebp
je 0xe4f523
lea esp, [esp]
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebp
jne 0xe4f510
mov ebx, dword [esp + 0x30]
push ebx
call fcn.00e6b828
add esp, 4
mov ecx, dword [esp + 0x24]
push ecx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
call fcn.00e6b828
mov esi, dword [esp + 0x4c]
add esp, 4
cmp esi, edi
je 0xe4f571
mov ebx, dword [esp + 0x4c]
cmp esi, ebx
je 0xe4f568
call fcn.00e4ff90
add esi, 0xc8
cmp esi, ebx
jne 0xe4f555
mov esi, dword [esp + 0x48]
push esi
call fcn.00e6b828
add esp, 4
mov edx, dword [esp + 0x3c]
push edx
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], edi
call fcn.00e6b828
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0xbc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xb4
ret