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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x34c
mov eax, dword [ebp + 8]
mov edx, dword [eax]
push ebx
lea ecx, [eax + 0x18]
push esi
xor eax, eax
push edi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], edx
mov dword [esp + 0x50], 0x7fffffff
mov dword [esp + 0x54], 0x80000000
test edx, edx
jle 0x42b4f4
mov ecx, dword [ebp + 0x18]
mov ecx, dword [ecx + eax*4]
cmp ecx, 0x80000000
je 0x42b4ef
cmp dword [esp + 0x50], ecx
jl 0x42b4e5
mov dword [esp + 0x50], ecx
cmp dword [esp + 0x54], ecx
jg 0x42b4ef
mov dword [esp + 0x54], ecx
inc eax
cmp eax, edx
jl 0x42b4cd
xor eax, eax
mov ecx, 0x80000000
jmp 0x42b508
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x44]
cmp eax, ebx
mov dword [esp + 0x28], ecx
mov ecx, dword [ebp + 0x18]
jge 0x42b525
cmp dword [ecx + eax*4], 0x80000000
jne 0x42b525
inc eax
cmp eax, ebx
jl 0x42b517
lea edx, [eax*4]
mov dword [esp + 0x10], eax
mov edi, edx
mov edx, dword [edx + ecx]
inc eax
cmp eax, ebx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x7c], edx
jge 0x42b557
mov esi, dword [ecx + eax*4]
cmp esi, 0x80000000
je 0x42b552
cmp esi, dword [edi + ecx]
jne 0x42b557
inc eax
cmp eax, ebx
jl 0x42b542
cmp eax, ebx
mov dword [esp + 0xc], eax
jge 0x42b564
mov eax, dword [ecx + eax*4]
jmp 0x42b566
mov eax, edx
mov esi, dword [esp + 0x28]
cmp esi, 0x80000000
jne 0x42b574
mov esi, edx
cmp esi, eax
mov ecx, esi
jg 0x42b580
mov ecx, eax
jge 0x42b580
mov eax, esi
cmp ecx, edx
mov dword [esp + 0x1c], ecx
jg 0x42b58e
mov dword [esp + 0x1c], edx
jl 0x42b59e
cmp edx, eax
jge 0x42b598
mov dword [esp + 0x2c], edx
jmp 0x42b5a2
mov dword [esp + 0x2c], eax
jmp 0x42b5a2
mov dword [esp + 0x2c], ecx
cmp dword [esp + 0x10], ebx
jge 0x42c024
mov edx, dword [esp + 0x1c]
sub edx, dword [esp + 0x2c]
cmp edx, 0x3c
jg 0x42c024
mov eax, dword [esp + 0x3c]
mov edx, dword [ebp + 0x18]
lea ecx, [eax + edx]
mov eax, dword [esp + 0x1c]
cmp eax, dword [ecx]
mov dword [esp + 0x5c], ecx
jle 0x42b8e6
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0xc]
mov dword [esp + 0x24], eax
jge 0x42b6d3
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x20]
lea esi, [ecx + eax*4 + 0x1ec0]
sub edx, edi
lea ecx, [esp + 0x268]
sub edi, ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x48], edi
lea esp, [esp]
lea ecx, [edi + eax*4]
lea ecx, [esp + ecx + 0x268]
cmp dword [ecx + edx], 0x80000000
je 0x42b6bd
mov edx, dword [esi]
mov ebx, 0x2aaaaac0
mov dword [esp + 0x28], edx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x18]
imul dword [esp + 0x28]
shl edx, 1
mov dword [esp + 0x18], edx
mov ecx, dword [ecx]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x20]
imul dword [esp + 0x28]
shl edx, 1
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x14], 0x2aaaaac0
mov eax, dword [esp + 0x14]
imul dword [esp + 0x28]
shl edx, 1
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
add eax, ebx
lea ecx, [eax + edi]
mov eax, dword [esi + 0x1e0]
sub eax, 0x13ee7b47
cmp ecx, eax
lea edx, [esp + edx*4 + 0x268]
mov dword [edx], ecx
jle 0x42b6a5
mov eax, ecx
mov ecx, dword [esi]
cmp eax, ecx
mov dword [edx], eax
jl 0x42b6af
mov eax, ecx
mov edi, dword [esp + 0x48]
mov dword [edx], eax
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
inc eax
add esi, 4
cmp eax, dword [esp + 0xc]
mov dword [esp + 0x24], eax
jl 0x42b610
mov ecx, dword [esp + 0x5c]
mov eax, dword [ecx]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
jg 0x42b8e6
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
cmp eax, ebx
mov esi, dword [ebp + 0x18]
mov ecx, 0x3c
lea edi, [esp + 0x88]
rep movsd dword es:[edi], dword [esi]
jge 0x42b725
mov ecx, dword [esp + 0x18]
mov edx, 0x80000000
lea ebx, [ebx]
cmp dword [esp + eax*4 + 0x88], edx
je 0x42b720
mov dword [esp + eax*4 + 0x88], ecx
inc eax
cmp eax, ebx
jl 0x42b710
mov ecx, dword [esp + 0x44]
mov edi, dword [ebp + 0x18]
push ebx
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x90]
push edx
call fcn.0042a7c0
mov ecx, dword [ebp + 0x28]
mov esi, eax
mov eax, dword [ebp + 0x2c]
push ebx
push eax
mov eax, dword [ebp + 8]
push ecx
lea edx, [esp + 0xa0]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [ebp + 0x24]
mov ecx, edi
call fcn.0042a900
mov edi, eax
add edi, esi
add esp, 0x20
add edi, dword [esp + 0x40]
jns 0x42b8d3
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0xc]
mov dword [esp + 0x14], 1
mov dword [esp + 0x24], eax
jge 0x42b82b
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [ebp + 0xc]
lea esi, [ecx + edx]
lea ecx, [esp + 0x178]
sub ecx, edx
mov dword [esp + 0x4c], ecx
lea eax, [esp + 0x88]
sub eax, edx
lea ecx, [esp + 0x268]
sub ecx, edx
mov dword [esp + 0x48], eax
mov dword [esp + 0x28], ecx
cmp dword [eax + esi], 0x80000000
je 0x42b7fe
mov edx, dword [esp + 0x18]
mov ecx, dword [esi]
mov eax, dword [esi + 4]
push edx
mov edx, dword [ebp + 0x14]
sub eax, ecx
lea edx, [edx + ecx*2]
lea ecx, [ebx + ecx*4]
call fcn.00425790
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x50]
add esp, 4
cmp eax, dword [edx + esi]
mov dword [ecx + esi], eax
jg 0x42b812
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x24]
inc ecx
add esi, 4
cmp ecx, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
jl 0x42b7c4
jmp 0x42b82b
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x14], 0
cmp eax, dword [ebx + ecx*4 + 0x20a0]
je 0x42b8e6
cmp dword [esp + 0x14], 0
je 0x42b8d3
mov edx, dword [esp + 0x10]
cmp edx, dword [esp + 0xc]
mov dword [esp + 0x40], edi
jge 0x42b8d3
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov ebx, dword [ebp + 0x20]
mov esi, dword [esp + 0xc]
lea ecx, [eax + edx]
mov eax, dword [ebp + 0x18]
lea edi, [esp + 0x178]
sub edi, eax
sub ebx, eax
sub eax, edx
sub esi, dword [esp + 0x10]
mov dword [esp + 0x34], edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x30], eax
jmp 0x42b884
mov eax, dword [esp + 0x30]
add eax, ecx
cmp dword [eax], 0x80000000
je 0x42b8cb
mov edx, dword [esp + 0x18]
mov dword [eax], edx
mov edx, dword [eax + edi]
mov dword [eax + ebx], edx
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
xor edx, edx
test eax, eax
jle 0x42b8cb
mov eax, dword [ecx]
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x10]
add eax, edx
add eax, eax
mov di, word [eax + edi]
mov word [eax + ebx], di
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
inc edx
cmp edx, eax
jl 0x42b8a5
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x34]
add ecx, 4
sub esi, 1
jne 0x42b880
mov eax, dword [esp + 0x18]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
jle 0x42b6e4
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x10]
cmp eax, dword [ecx]
jne 0x42bcb4
cmp dword [esp + 0x2c], eax
jge 0x42bcb4
mov edx, dword [esp + 0x54]
sub edx, dword [esp + 0x50]
cmp edx, 0x3c
jg 0x42bcb4
mov esi, dword [ebp + 0x18]
xor edx, edx
cmp ebx, dword [esp + 0xc]
mov ecx, 0x3c
lea edi, [esp + 0x88]
rep movsd dword es:[edi], dword [esi]
mov eax, ebx
jge 0x42b974
mov ecx, dword [ebp + 0x1c]
lea esi, [esp + 0x88]
sub ecx, esi
mov esi, dword [esp + 0x2c]
cmp dword [esp + eax*4 + 0x88], 0x80000000
je 0x42b965
lea edi, [ecx + eax*4]
cmp esi, dword [esp + edi + 0x88]
mov dword [esp + eax*4 + 0x88], esi
jge 0x42b965
mov edx, 1
inc eax
cmp eax, dword [esp + 0xc]
jl 0x42b940
test edx, edx
jne 0x42bcb4
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x44]
mov edi, dword [ebp + 0x18]
push eax
push ecx
lea edx, [esp + 0x90]
push edx
mov ecx, ebx
call fcn.0042a7c0
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov esi, eax
mov eax, dword [esp + 0x18]
push eax
push ecx
mov ecx, dword [ebp + 8]
push edx
lea eax, [esp + 0xa0]
push eax
mov eax, dword [ebp + 0x24]
push ecx
mov edx, ebx
mov ecx, edi
call fcn.0042a900
add eax, esi
add esp, 0x20
add eax, dword [esp + 0x40]
mov dword [esp + 0x30], eax
jns 0x42bcb4
xor ecx, ecx
cmp ebx, dword [esp + 0xc]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x24], ebx
jge 0x42bbfb
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ecx, dword [ebp + 0xc]
lea esi, [edx + eax]
mov edx, dword [ebp + 0x20]
lea edi, [ecx + ebx*4 + 0x1ec0]
lea ecx, [esp + 0x88]
sub ecx, edx
sub edx, eax
lea eax, [esp + 0x178]
sub eax, dword [esp + 0x38]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x4c], eax
lea eax, [edx + esi]
cmp dword [eax + ecx], 0x80000000
je 0x42bbd3
mov eax, dword [eax]
test eax, eax
jne 0x42ba3c
mov eax, 0x7fffffff
jmp 0x42badc
jge 0x42ba82
lea edx, [esp + 0x78]
push edx
mov edx, 6
call fcn.004443f0
mov ecx, dword [esp + 0x7c]
add esp, 4
cmp ecx, 0xffffffe1
jge 0x42ba6a
mov ecx, 0xffffffe1
mov dword [esp + 0x78], ecx
test ecx, ecx
jle 0x42ba7c
shl eax, cl
jmp 0x42badc
cmp ecx, 0x1f
jle 0x42ba5e
mov ecx, 0x1f
mov dword [esp + 0x78], ecx
shl eax, cl
jmp 0x42badc
neg ecx
sar eax, cl
jmp 0x42badc
lea ecx, [esp + 0x68]
push ecx
mov edx, 6
call fcn.004443f0
mov ecx, dword [esp + 0x6c]
add ecx, 0xffffffe2
add esp, 4
cmp ecx, 0xffffffe1
jg 0x42baa7
mov ecx, 0xffffffe1
jmp 0x42baac
cmp ecx, 0x1f
jge 0x42bac6
mov dword [esp + 0x68], ecx
test ecx, ecx
jle 0x42bad5
mov edx, 0x7fffffff
sar edx, cl
cmp eax, edx
jle 0x42bad1
mov eax, 0x7fffffff
jmp 0x42badc
mov ecx, 0x1f
mov dword [esp + 0x68], ecx
jmp 0x42bab4
shl eax, cl
jmp 0x42bad9
neg ecx
sar eax, cl
inc eax
sar eax, 1
mov ecx, dword [esi]
mov edx, dword [ebp + 0x14]
mov ebx, dword [ebp + 0xc]
sar eax, 3
add dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
push eax
mov eax, dword [esi + 4]
sub eax, ecx
lea edx, [edx + ecx*2]
lea ecx, [ebx + ecx*4]
call fcn.00425790
mov ecx, dword [esp + 0x50]
add esp, 4
cmp eax, dword [edi]
mov dword [ecx + esi], eax
jg 0x42bbf1
test eax, eax
jne 0x42bb20
mov eax, 0x7fffffff
jmp 0x42bbc0
jge 0x42bb66
lea edx, [esp + 0x64]
push edx
mov edx, 6
call fcn.004443f0
mov ecx, dword [esp + 0x68]
add esp, 4
cmp ecx, 0xffffffe1
jge 0x42bb4e
mov ecx, 0xffffffe1
mov dword [esp + 0x64], ecx
test ecx, ecx
jle 0x42bb60
shl eax, cl
jmp 0x42bbc0
cmp ecx, 0x1f
jle 0x42bb42
mov ecx, 0x1f
mov dword [esp + 0x64], ecx
shl eax, cl
jmp 0x42bbc0
neg ecx
sar eax, cl
jmp 0x42bbc0
lea ecx, [esp + 0x70]
push ecx
mov edx, 6
call fcn.004443f0
mov ecx, dword [esp + 0x74]
add ecx, 0xffffffe2
add esp, 4
cmp ecx, 0xffffffe1
jg 0x42bb8b
mov ecx, 0xffffffe1
jmp 0x42bb90
cmp ecx, 0x1f
jge 0x42bbaa
mov dword [esp + 0x70], ecx
test ecx, ecx
jle 0x42bbb9
mov edx, 0x7fffffff
sar edx, cl
cmp eax, edx
jle 0x42bbb5
mov eax, 0x7fffffff
jmp 0x42bbc0
mov ecx, 0x1f
mov dword [esp + 0x70], ecx
jmp 0x42bb98
shl eax, cl
jmp 0x42bbbd
neg ecx
sar eax, cl
inc eax
sar eax, 1
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x10]
sar eax, 3
add dword [esp + 0x20], eax
inc dword [esp + 0x24]
mov eax, dword [esp + 0xc]
add esi, 4
add edi, 4
cmp dword [esp + 0x24], eax
jl 0x42ba1c
mov ecx, dword [esp + 0x20]
jmp 0x42bbfb
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x10]
add ecx, ecx
mov dword [esp + 0x14], 0x66666680
mov eax, dword [esp + 0x14]
imul dword [esp + 0x1c]
shl edx, 1
mov dword [esp + 0x14], edx
cmp ecx, dword [esp + 0x14]
jge 0x42bcb4
cmp ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x40], ecx
jge 0x42bcb4
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov ebx, dword [ebp + 0x20]
mov esi, dword [esp + 0xc]
lea ecx, [eax + edx]
mov eax, dword [ebp + 0x18]
lea edi, [esp + 0x178]
sub edi, eax
sub ebx, eax
sub eax, edx
sub esi, dword [esp + 0x10]
mov dword [esp + 0x34], edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x30], eax
jmp 0x42bc65
mov eax, dword [esp + 0x30]
add eax, ecx
cmp dword [eax], 0x80000000
je 0x42bcac
mov edx, dword [esp + 0x2c]
mov dword [eax], edx
mov edx, dword [eax + edi]
mov dword [eax + ebx], edx
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
xor edx, edx
test eax, eax
jle 0x42bcac
mov eax, dword [ecx]
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x10]
add eax, edx
add eax, eax
mov di, word [eax + edi]
mov word [eax + ebx], di
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
inc edx
cmp edx, eax
jl 0x42bc86
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x14]
add ecx, 4
sub esi, 1
jne 0x42bc61
mov ecx, dword [esp + 0x54]
sub ecx, dword [esp + 0x50]
cmp ecx, 0x39
jg 0x42c024
mov ecx, dword [esp + 0x44]
test ecx, ecx
jle 0x42bcd9
mov esi, dword [ebp + 0x18]
lea edi, [esp + 0x88]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [esp + 0x3c]
lea eax, [esp + edx + 0x88]
mov dword [esp + 0x80], eax
mov dword [esp + 0x28], 3
mov ecx, dword [esp + 0x80]
mov ebx, dword [ecx]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
dec ebx
cmp ecx, edx
mov dword [esp + 0x18], ebx
mov eax, ecx
jge 0x42bd29
nop
cmp dword [esp + eax*4 + 0x88], 0x80000000
je 0x42bd24
mov dword [esp + eax*4 + 0x88], ebx
inc eax
cmp eax, edx
jl 0x42bd10
mov edi, dword [ebp + 0x18]
push edx
mov edx, dword [esp + 0x48]
push edx
lea eax, [esp + 0x90]
push eax
call fcn.0042a7c0
mov edi, eax
add edi, dword [esp + 0x4c]
add esp, 0xc
mov dword [esp + 0x30], edi
test edi, edi
jg 0x42c019
xor eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0xc]
mov dword [esp + 0x14], 1
mov dword [esp + 0x24], eax
jge 0x42c019
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, dword [ebp + 0xc]
lea esi, [ecx + eax]
mov ecx, dword [esp + 0x10]
lea edx, [edx + ecx*4 + 0x20a0]
mov dword [esp + 0x2c], edx
mov edx, dword [ebp + 0x20]
sub edx, eax
mov dword [esp + 0x34], edx
lea ecx, [esp + 0x88]
sub ecx, eax
lea edx, [esp + 0x178]
sub edx, eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
jmp 0x42bdc0
cmp dword [ecx + esi], 0x80000000
je 0x42bfa2
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x84]
push ecx
mov ecx, dword [esi + 4]
lea ebx, [eax + esi]
mov eax, dword [esi]
push edx
mov edx, dword [ebp + 0x10]
sub ecx, eax
push ecx
lea ecx, [edx + eax*2]
mov edx, dword [ebp + 0xc]
push ecx
lea eax, [edx + eax*4]
push eax
call fcn.004258a0
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + esi]
add esp, 0x14
test eax, eax
jne 0x42be14
mov eax, 0x7fffffff
jmp 0x42beb4
jge 0x42be5a
lea edx, [esp + 0x58]
push edx
mov edx, 6
call fcn.004443f0
mov ecx, dword [esp + 0x5c]
add esp, 4
cmp ecx, 0xffffffe1
jge 0x42be42
mov ecx, 0xffffffe1
mov dword [esp + 0x58], ecx
test ecx, ecx
jle 0x42be54
shl eax, cl
jmp 0x42beb4
cmp ecx, 0x1f
jle 0x42be36
mov ecx, 0x1f
mov dword [esp + 0x58], ecx
shl eax, cl
jmp 0x42beb4
neg ecx
sar eax, cl
jmp 0x42beb4
lea ecx, [esp + 0x74]
push ecx
mov edx, 6
call fcn.004443f0
mov ecx, dword [esp + 0x78]
add ecx, 0xffffffe2
add esp, 4
cmp ecx, 0xffffffe1
jg 0x42be7f
mov ecx, 0xffffffe1
jmp 0x42be84
cmp ecx, 0x1f
jge 0x42be9e
mov dword [esp + 0x74], ecx
test ecx, ecx
jle 0x42bead
mov edx, 0x7fffffff
sar edx, cl
cmp eax, edx
jle 0x42bea9
mov eax, 0x7fffffff
jmp 0x42beb4
mov ecx, 0x1f
mov dword [esp + 0x74], ecx
jmp 0x42be8c
shl eax, cl
jmp 0x42beb1
neg ecx
sar eax, cl
inc eax
sar eax, 1
mov edi, dword [ebx]
sar eax, 3
add dword [esp + 0x1c], eax
test edi, edi
jne 0x42becb
mov eax, 0x7fffffff
jmp 0x42bf6a
mov edx, 6
jge 0x42bf13
lea eax, [esp + 0x6c]
push eax
mov eax, edi
call fcn.004443f0
mov ecx, dword [esp + 0x70]
add esp, 4
cmp ecx, 0xffffffe1
jge 0x42befb
mov ecx, 0xffffffe1
mov dword [esp + 0x6c], ecx
test ecx, ecx
jle 0x42bf0d
shl eax, cl
jmp 0x42bf6a
cmp ecx, 0x1f
jle 0x42beef
mov ecx, 0x1f
mov dword [esp + 0x6c], ecx
shl eax, cl
jmp 0x42bf6a
neg ecx
sar eax, cl
jmp 0x42bf6a
lea ecx, [esp + 0x60]
push ecx
mov eax, edi
call fcn.004443f0
mov ecx, dword [esp + 0x64]
add ecx, 0xffffffe2
add esp, 4
cmp ecx, 0xffffffe1
jg 0x42bf35
mov ecx, 0xffffffe1
jmp 0x42bf3a
cmp ecx, 0x1f
jge 0x42bf54
mov dword [esp + 0x60], ecx
test ecx, ecx
jle 0x42bf63
mov edx, 0x7fffffff
sar edx, cl
cmp eax, edx
jle 0x42bf5f
mov eax, 0x7fffffff
jmp 0x42bf6a
mov ecx, 0x1f
mov dword [esp + 0x60], ecx
jmp 0x42bf42
shl eax, cl
jmp 0x42bf67
neg ecx
sar eax, cl
inc eax
sar eax, 1
sar eax, 3
add dword [esp + 0x20], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + esi]
add ecx, 0x55077b
cmp edi, ecx
jg 0x42bfbf
mov edx, dword [esp + 0x2c]
mov eax, dword [edx]
sub eax, 0xff2bfe
cmp dword [esp + 0x84], eax
jl 0x42bfbf
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x24]
add dword [esp + 0x2c], 4
inc eax
add esi, 4
cmp eax, dword [esp + 0xc]
mov dword [esp + 0x24], eax
jl 0x42bdc0
jmp 0x42bfcf
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x1c]
cmp dword [esp + 0x20], ecx
jge 0x42c019
cmp dword [esp + 0x14], 0
je 0x42c019
mov ecx, dword [ebp + 0x18]
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x40], edi
mov edi, dword [ebp + 0x20]
lea edx, [esp + 0x178]
sub edx, ecx
sub edi, ecx
mov ecx, dword [esp + 0xc]
sub ecx, dword [esp + 0x10]
cmp dword [eax], 0x80000000
je 0x42c011
mov esi, dword [eax + edx]
mov dword [eax], ebx
mov dword [eax + edi], esi
add eax, 4
sub ecx, 1
jne 0x42c001
sub dword [esp + 0x28], 1
jne 0x42bcf3
mov edx, dword [esp + 0x44]
cmp dword [esp + 0xc], edx
jle 0x42b500
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret