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

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x2dc
push ebx
xor edx, edx
push esi
mov esi, ecx
mov eax, dword [esi + 0xe0]
mov ecx, dword [eax]
mov ebx, dword [esi + 0xdc]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x28], edx
mov dword [ebp + 0x34], edx
mov dword [ebp + 0xc], edx
push edi
mov dword [ebp + 0x68], ebx
mov edx, ecx
mov edi, ecx
xor ebx, ebx
and edi, 0xfffff
inc ebx
and edx, 0xfff00000
mov ecx, 0x20100000
cmp edx, ecx
mov dword [ebp + 0x64], esi
mov dword [ebp + 0x5c], edi
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], 2
mov dword [ebp + 0x18], 3
jne 0x4829b7
push ebx
push 2
lea ecx, [ebp + 0x50]
push ecx
push eax
mov dword [ebp + 0x20], eax
mov eax, edi
and eax, 0xfffff
or eax, 0x20000000
push eax
mov ecx, esi
call fcn.00480a2a
test eax, eax
mov dword [ebp + 0x1c], eax
je 0x4829e2
and dword [ebp + 0x30], 0
jmp 0x4829f1
cmp edx, 0x20000000
jne 0x4829ee
push ebx
push 2
lea edx, [ebp + 0x50]
push edx
push eax
mov dword [ebp + 0x1c], eax
mov eax, edi
and eax, 0xfffff
or eax, ecx
push eax
mov ecx, esi
call fcn.00480a2a
test eax, eax
mov dword [ebp + 0x20], eax
jne 0x4829e9
mov eax, ebx
jmp 0x48401c
mov dword [ebp + 0x30], ebx
jmp 0x4829f1
mov dword [ebp + 0x28], ebx
xor edx, edx
cmp dword [ebp + 0x28], edx
mov dword [ebp + 0x24], edx
mov dword [ebp + 0x38], edx
jne 0x482c87
mov eax, dword [ebp + 0x1c]
mov ecx, dword [esi + 0x14]
mov eax, dword [eax + 8]
mov esi, dword [esi + 0x10]
lea edx, [eax + edi*4]
mov edi, dword [eax]
mov edi, dword [ecx + edi*4]
mov edi, dword [edi + 4]
mov ebx, dword [esi + edi*4]
mov edi, dword [edx]
mov edi, dword [ecx + edi*4]
mov edi, dword [edi + 4]
mov esi, dword [esi + edi*4]
mov esi, dword [esi + 4]
mov edi, 0x100
and esi, edi
je 0x482a38
mov dword [ebp + 0x58], eax
jmp 0x482a46
test dword [ebx + 4], edi
je 0x483690
mov dword [ebp + 0x58], edx
mov edx, eax
test esi, esi
mov eax, dword [ebp + 0x20]
mov edi, dword [eax + 8]
mov eax, dword [ebp + 0x5c]
lea eax, [edi + eax*4]
je 0x482a5b
mov dword [ebp + 0x44], edi
jmp 0x482a6a
test byte [ebx + 5], 1
je 0x483690
mov dword [ebp + 0x44], eax
mov eax, edi
cmp dword [ebp + 0x30], 0
je 0x482aa0
mov esi, dword [ebp + 0x64]
mov edi, dword [esi + 0x88]
mov esi, dword [ebp + 0x44]
mov esi, dword [esi]
mov esi, dword [ecx + esi*4]
cmp dword [esi + 4], edi
jne 0x483690
mov esi, dword [ebp + 0x58]
mov esi, dword [esi]
mov ebx, dword [ecx + esi*4]
cmp dword [ebx + 4], edi
je 0x482ace
mov dword [ebp + 0x38], 1
jmp 0x482ace
mov esi, dword [ebp + 0x44]
mov esi, dword [esi]
mov ebx, dword [ecx + esi*4]
mov esi, dword [ebp + 0x64]
mov edi, dword [esi + 0x88]
cmp dword [ebx + 4], edi
je 0x482abd
mov dword [ebp + 0x38], 1
mov esi, dword [ebp + 0x58]
mov esi, dword [esi]
mov esi, dword [ecx + esi*4]
cmp dword [esi + 4], edi
jne 0x483690
mov esi, dword [ebx + 0x3c]
test esi, 0xffff03ff
mov dword [ebp + 0x24], esi
jne 0x483690
and dword [ebp + 0x60], 0
cmp dword [ebp + 0x5c], 0
jbe 0x482c71
mov esi, dword [ebp + 0x58]
mov edi, dword [ebp + 0x44]
sub esi, edx
sub edi, edx
mov dword [ebp + 0x70], eax
sub dword [ebp + 0x70], edx
mov dword [ebp + 0x48], esi
mov dword [ebp + 0x3c], edi
jmp 0x482b09
mov esi, dword [ebp + 0x48]
mov eax, dword [edx + esi]
mov esi, dword [edx]
mov esi, dword [ecx + esi*4]
mov edi, dword [ebp + 0x64]
mov ebx, dword [esi + 4]
mov edi, dword [edi + 0x10]
mov edi, dword [edi + ebx*4]
test byte [edi + 5], 1
mov eax, dword [ecx + eax*4]
je 0x483690
mov edi, dword [eax + 0x54]
cmp edi, dword [ebp + 0x50]
ja 0x483690
cmp dword [ebp + 0x30], 0
je 0x482b87
mov ebx, dword [ebp + 0x64]
cmp edi, dword [ebx + 0xdc]
ja 0x483690
mov edi, dword [ebp + 0x24]
cmp dword [eax + 0x3c], edi
jne 0x483690
xor ebx, ebx
cmp dword [ebp + 0x40], ebx
jbe 0x482b6d
mov edi, dword [eax + 0x44]
cmp edi, dword [ebp + ebx*4 + 0xc]
je 0x482b6d
inc ebx
cmp ebx, dword [ebp + 0x40]
jb 0x482b5e
cmp ebx, dword [ebp + 0x40]
jne 0x482b93
cmp dword [ebp + 0x38], 0
jne 0x482b93
mov edi, dword [ebp + 0x40]
mov eax, dword [eax + 0x44]
inc dword [ebp + 0x40]
mov dword [ebp + edi*4 + 0xc], eax
jmp 0x482b93
mov edi, dword [ebp + 0x68]
cmp dword [eax + 0x44], edi
jne 0x483690
fld qword [esi + 0x20]
fcomp qword [0x4de080]
fnstsw ax
test ah, 0x44
jp 0x483690
mov eax, dword [ebp + 0x3c]
mov eax, dword [edx + eax]
mov esi, dword [ebp + 0x70]
mov eax, dword [ecx + eax*4]
mov esi, dword [edx + esi]
mov edi, dword [eax + 0x3c]
test edi, 0xffff03ff
mov esi, dword [ecx + esi*4]
mov dword [ebp + 0x54], esi
jne 0x483690
mov ebx, dword [esi + 4]
mov esi, dword [ebp + 0x64]
mov esi, dword [esi + 0x10]
mov esi, dword [esi + ebx*4]
test byte [esi + 5], 1
je 0x483690
cmp dword [ebp + 0x30], 0
jne 0x482c30
mov esi, dword [eax + 0x54]
mov ebx, dword [ebp + 0x64]
cmp esi, dword [ebx + 0xdc]
ja 0x483690
cmp edi, dword [ebp + 0x24]
jne 0x483690
mov ebx, dword [ebp + 0x40]
xor esi, esi
test ebx, ebx
jbe 0x482c19
mov edi, dword [eax + 0x44]
cmp edi, dword [ebp + esi*4 + 0xc]
je 0x482c19
inc esi
cmp esi, ebx
jb 0x482c0e
cmp esi, ebx
jne 0x482c48
cmp dword [ebp + 0x38], 0
jne 0x482c48
mov eax, dword [eax + 0x44]
mov dword [ebp + ebx*4 + 0xc], eax
inc ebx
mov dword [ebp + 0x40], ebx
jmp 0x482c48
mov esi, dword [eax + 0x44]
cmp esi, dword [ebp + 0x68]
jne 0x483690
mov eax, dword [eax + 0x54]
cmp eax, dword [ebp + 0x50]
ja 0x483690
mov eax, dword [ebp + 0x54]
fld qword [eax + 0x20]
fcomp qword [0x4ddfa8]
fnstsw ax
test ah, 0x44
jp 0x483690
inc dword [ebp + 0x60]
mov eax, dword [ebp + 0x60]
add edx, 4
cmp eax, dword [ebp + 0x5c]
jb 0x482b06
cmp dword [ebp + 0x30], 0
je 0x482c82
mov eax, dword [ebp + 0x58]
mov dword [ebp + 0x6c], eax
jmp 0x483b14
mov eax, dword [ebp + 0x44]
jmp 0x482c7a
mov esi, dword [esi + 0xe0]
mov eax, dword [esi]
mov ecx, eax
mov edi, 0xfff00000
and ecx, edi
cmp ecx, 0xf0d00000
mov dword [ebp + 0x58], esi
jne 0x482e0e
and eax, 0xfffff
mov ecx, eax
mov dword [ebp + 0x5c], ecx
neg ecx
shl eax, 2
shl ecx, 2
mov dword [ebp + 0x48], ecx
mov ecx, eax
mov dword [ebp + 0x60], edx
mov dword [ebp + 0x74], edx
mov dword [ebp + 0x54], ecx
and dword [ebp + 0x50], 0
cmp dword [ebp + 0x5c], 0
jbe 0x482d65
mov eax, dword [ebp + 0x64]
mov edx, dword [eax + 0x14]
mov eax, dword [ebp + 0x58]
mov eax, dword [eax + 8]
mov esi, dword [ebp + 0x74]
add esi, eax
add eax, ecx
mov dword [ebp + 0x70], esi
mov dword [ebp + 0x68], eax
mov ecx, dword [ebp + 0x70]
mov esi, dword [ecx]
mov ecx, dword [edx + esi*4]
test byte [ecx + 0x3e], 8
mov eax, dword [eax]
mov edi, dword [edx + eax*4]
je 0x482d06
test byte [ecx], 8
jmp 0x482d09
test byte [ecx], 4
je 0x482d65
mov ebx, dword [ebp + 0x64]
mov eax, dword [edi + 4]
mov ebx, dword [ebx + 0x10]
mov eax, dword [ebx + eax*4]
test byte [eax + 5], 1
je 0x482d65
fld qword [edi + 0x20]
fcomp qword [0x4de080]
fnstsw ax
test ah, 0x44
jp 0x482d65
cmp dword [edi + 8], 0xffffffff
jne 0x482d65
mov eax, dword [ecx + 4]
mov ecx, dword [ebp + 0x64]
cmp eax, dword [ecx + 0x88]
mov edi, dword [ebp + 0x50]
mov dword [ebp + edi*4 - 4], esi
je 0x482d4f
mov dword [ebp + 0x38], 1
mov eax, dword [ebp + 0x68]
add dword [ebp + 0x70], 4
inc edi
add eax, 4
cmp edi, dword [ebp + 0x5c]
mov dword [ebp + 0x50], edi
mov dword [ebp + 0x68], eax
jb 0x482cee
mov eax, dword [ebp + 0x5c]
cmp dword [ebp + 0x50], eax
je 0x482d8b
mov ecx, dword [ebp + 0x54]
add ecx, dword [ebp + 0x48]
inc dword [ebp + 0x60]
shl eax, 2
add dword [ebp + 0x74], eax
cmp dword [ebp + 0x60], 2
mov dword [ebp + 0x54], ecx
jb 0x482cc7
jmp 0x482dec
test eax, eax
jbe 0x482dec
mov ecx, dword [ebp + 0x64]
mov edi, dword [ecx + 0x14]
mov ecx, dword [ebp + 0x60]
mov edx, dword [ebp + 0x58]
imul ecx, eax
mov edx, dword [edx + 8]
lea edx, [edx + ecx*4]
mov ecx, dword [edx]
mov ecx, dword [edi + ecx*4]
cmp dword [ecx + 0x38], 0xffffffff
jne 0x482ddf
xor esi, esi
cmp dword [ebp + 0x40], esi
jbe 0x482dc5
mov ebx, dword [ecx + 0x44]
cmp ebx, dword [ebp + esi*4 + 0xc]
je 0x482dc5
inc esi
cmp esi, dword [ebp + 0x40]
jb 0x482db9
cmp esi, dword [ebp + 0x40]
jne 0x482de6
cmp dword [ebp + 0x38], 0
jne 0x482de6
mov esi, dword [ebp + 0x40]
mov ecx, dword [ecx + 0x44]
inc dword [ebp + 0x40]
mov dword [ebp + esi*4 + 0xc], ecx
jmp 0x482de6
mov dword [ebp + 0x38], 1
add edx, 4
dec eax
jne 0x482da4
cmp dword [ebp + 0x60], 2
je 0x483690
mov eax, dword [ebp + 0x58]
mov dword [ebp - 0x84], eax
mov dword [ebp + 0x34], 1
lea eax, [ebp - 4]
jmp 0x482c7a
mov ecx, 0xfffff
and eax, ecx
mov dword [ebp + 0x5c], eax
mov eax, dword [esi]
mov esi, eax
and esi, ecx
cmp esi, dword [ebp + 0x5c]
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x60], esi
ja 0x483173
and eax, edi
cmp eax, 0x30000000
jne 0x483173
mov dword [ebp + 0x70], edx
and dword [ebp + 0x74], 0
xor ecx, ecx
push 0x28
pop ecx
or eax, 0xffffffff
lea edi, [ebp - 0x44]
lea edi, [ebp - 0x1c4]
rep stosd dword es:[edi], eax
push 0x28
xor ebx, ebx
pop ecx
lea edi, [ebp - 0x264]
lea esi, [ebp - 0x84]
rep stosd dword es:[edi], eax
mov dword [ebp + 0x44], ebx
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x4c], ebx
cmp dword [ebp + 0x74], 0
je 0x482e7e
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + 0x4c]
jmp 0x482e81
mov ecx, dword [ebp + 0x4c]
mov eax, dword [ebp + 0x58]
mov esi, dword [eax + 8]
mov edi, dword [ebp + 0x64]
mov ecx, dword [ecx*4 + 0x4e6fd4]
cmp ecx, 0x10
mov edi, dword [edi + 0x14]
lea edx, [esi + ebx*4]
mov eax, dword [edx]
mov edi, dword [edi + eax*4]
jae 0x482f0c
mov eax, dword [edi + 0x44]
cmp eax, 0xffffffff
je 0x482f52
shl ecx, 5
push 0
mov esi, ecx
push dword [esi + 0x4e6fe0]
lea ecx, [ebp - 4]
push ecx
lea ecx, [ebp + 0xc]
push ecx
push dword [ebp + 0x60]
mov ecx, dword [ebp + 0x64]
push edx
mov edx, dword [ecx + 0x18]
push dword [edx + eax*4]
call fcn.0047a2a0
test eax, eax
jne 0x482f52
mov ecx, dword [ebp + 0x64]
mov edx, dword [ecx + 0x18]
push eax
push dword [ebp + 0x5c]
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp + 0x44]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [esi + 0x4e6fc8]
push eax
mov eax, dword [edi + 0x44]
push dword [edx + eax*4]
call fcn.0047a449
mov dword [ebp + 0x6c], eax
jmp 0x482f3a
sub ecx, 0x10
xor edi, edi
shl ecx, 4
lea ecx, [ebp + ecx - 0x1c4]
mov edx, dword [ebp + edi*4 + 0xc]
cmp edx, dword [ebp + 0x60]
jae 0x482f2e
lea eax, [ebx + edx]
mov eax, dword [esi + eax*4]
mov dword [ecx], eax
jmp 0x482f31
or dword [ecx], 0xffffffff
inc edi
add ecx, 4
cmp edi, 4
jb 0x482f1b
cmp dword [ebp + 0x6c], 1
je 0x482f59
inc dword [ebp + 0x4c]
add ebx, dword [ebp + 0x60]
cmp dword [ebp + 0x4c], 3
jb 0x482e70
jmp 0x482f59
mov dword [ebp + 0x6c], 1
and dword [ebp + 0x4c], 0
and dword [ebp + 0x68], 0
cmp dword [ebp + 0x74], 0
je 0x482f6f
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + 0x4c]
jmp 0x482f72
mov ecx, dword [ebp + 0x4c]
cmp dword [ecx*4 + 0x4e6fd4], 0x10
jb 0x482fd9
and dword [ebp + 0x50], 0
cmp dword [ebp + 0x44], 0
jbe 0x482fd9
xor edi, edi
cmp dword [ebp + 0x60], edi
jbe 0x482fce
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp + eax*4 - 0x44]
mov ebx, dword [edx + 0xc]
and dword [ebp + 0x54], 0
test ebx, ebx
jbe 0x482fbf
mov eax, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x58]
mov ecx, dword [ecx + 8]
add eax, edi
mov esi, dword [ecx + eax*4]
mov ecx, dword [edx + 0x10]
cmp esi, dword [ecx]
je 0x482fc7
inc dword [ebp + 0x54]
add ecx, 4
cmp dword [ebp + 0x54], ebx
jb 0x482fb0
inc edi
cmp edi, dword [ebp + 0x60]
jb 0x482f97
jmp 0x482fce
mov dword [ebp + 0x6c], 1
inc dword [ebp + 0x50]
mov eax, dword [ebp + 0x50]
cmp eax, dword [ebp + 0x44]
jb 0x482f86
mov eax, dword [ebp + 0x60]
inc dword [ebp + 0x4c]
add dword [ebp + 0x68], eax
cmp dword [ebp + 0x4c], 3
jb 0x482f61
xor ebx, ebx
cmp dword [ebp + 0x6c], ebx
jne 0x4830e7
cmp dword [ebp + 0x70], ebx
jne 0x483109
xor eax, eax
cmp dword [ebp + 0x44], ebx
mov dword [ebp + 0x68], eax
jbe 0x483109
mov eax, dword [ebp + eax*4 - 0x44]
mov eax, dword [eax + 0xc]
cmp eax, ebx
mov dword [ebp + 0x50], ebx
mov dword [ebp + 0x2c], eax
jbe 0x4830d2
mov ecx, dword [ebp + 0x64]
mov eax, dword [ecx + 0xc]
cmp eax, ebx
jbe 0x4830c3
mov ecx, dword [ecx + 0x18]
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x3c], eax
mov ecx, dword [ecx]
cmp ecx, ebx
je 0x4830b1
cmp dword [ecx], ebx
je 0x4830b1
mov edi, dword [ecx + 4]
cmp edi, ebx
mov dword [ebp + 0x54], ebx
jbe 0x483086
mov eax, dword [ebp + 0x68]
mov eax, dword [ebp + eax*4 - 0x44]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp + 0x50]
mov esi, dword [eax + edx*4]
mov edx, dword [ecx + 8]
mov eax, edi
mov edi, dword [edx]
cmp edi, esi
je 0x483079
mov ebx, dword [ebp + 0x64]
mov ebx, dword [ebx + 0x14]
mov edi, dword [ebx + edi*4]
xor ebx, ebx
cmp dword [edi + 0x38], esi
jne 0x483080
mov dword [ebp + 0x54], 1
add edx, 4
dec eax
jne 0x483063
cmp ecx, dword [ebp + 0x58]
jne 0x48308f
xor eax, eax
jmp 0x483092
mov eax, dword [ebp + 0x54]
cmp eax, ebx
je 0x4830b1
xor edx, edx
cmp ecx, dword [ebp + edx*4 - 0x44]
jne 0x4830a0
xor eax, eax
inc edx
cmp edx, dword [ebp + 0x44]
jb 0x483098
cmp eax, ebx
je 0x4830b1
mov dword [ebp + 0x6c], 1
mov ecx, dword [ebp + 0x4c]
add ecx, 4
dec dword [ebp + 0x3c]
mov dword [ebp + 0x4c], ecx
jne 0x48303a
inc dword [ebp + 0x50]
mov eax, dword [ebp + 0x50]
cmp eax, dword [ebp + 0x2c]
jb 0x483023
mov eax, dword [ebp + 0x68]
inc eax
cmp eax, dword [ebp + 0x44]
mov dword [ebp + 0x68], eax
jb 0x48300e
cmp dword [ebp + 0x6c], ebx
je 0x483109
inc dword [ebp + 0x74]
cmp dword [ebp + 0x74], 1
jb 0x482e41
cmp dword [ebp + 0x6c], 0
je 0x483109
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], 1
jb 0x482e3d
jmp 0x483167
mov edx, dword [ebp + 0x44]
mov eax, edx
shl eax, 2
mov ecx, eax
mov ebx, ecx
shr ecx, 2
lea esi, [ebp - 0x44]
lea edi, [ebp - 0x84]
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x58]
inc edx
mov dword [ebp + eax - 0x84], ecx
mov dword [ebp + 0x34], edx
xor eax, eax
mov ecx, dword [ebp + eax - 0x1c4]
cmp ecx, 0xffffffff
jne 0x483152
mov ecx, dword [ebp + eax - 0x264]
cmp ecx, 0xffffffff
je 0x483159
mov dword [ebp + eax - 0x124], ecx
add eax, 4
cmp eax, 0xa0
jb 0x48313a
and dword [ebp + 0x6c], 0
mov eax, dword [ebp + 0x6c]
cmp eax, 1
jne 0x4833f1
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 0xe0]
mov dword [ebp + 0x44], eax
mov eax, dword [eax]
mov ecx, eax
and ecx, 0xfffff
cmp ecx, dword [ebp + 0x5c]
mov dword [ebp + 0x60], ecx
ja 0x48319d
and eax, 0xfff00000
cmp eax, 0x30000000
je 0x4831a5
xor eax, eax
inc eax
jmp 0x4833ed
mov eax, dword [ebp + 0x34]
and dword [ebp + 0x50], 0
shl eax, 2
mov dword [ebp + 0x2c], eax
and dword [ebp + 0x4c], 0
mov ecx, dword [ebp + 0x2c]
mov eax, ecx
shr ecx, 2
lea esi, [ebp - 0x84]
lea edi, [ebp - 0x44]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x28
pop ecx
or eax, 0xffffffff
lea edi, [ebp - 0x264]
rep stosd dword es:[edi], eax
push 0x28
pop ecx
lea edi, [ebp - 0x1c4]
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0x34]
xor ebx, ebx
mov dword [ebp + 0x58], eax
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x74], ebx
cmp dword [ebp + 0x4c], 0
je 0x483205
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + 0x74]
jmp 0x483208
mov ecx, dword [ebp + 0x74]
mov eax, dword [ebp + 0x44]
mov esi, dword [eax + 8]
mov edi, dword [ebp + 0x64]
mov ecx, dword [ecx*4 + 0x4e7134]
cmp ecx, 0x10
mov edi, dword [edi + 0x14]
lea edx, [esi + ebx*4]
mov eax, dword [edx]
mov edi, dword [edi + eax*4]
jae 0x483293
mov eax, dword [edi + 0x44]
cmp eax, 0xffffffff
je 0x4832d8
shl ecx, 5
push 0
mov esi, ecx
push dword [esi + 0x4e7140]
lea ecx, [ebp - 4]
push ecx
lea ecx, [ebp + 0xc]
push ecx
push dword [ebp + 0x60]
mov ecx, dword [ebp + 0x64]
push edx
mov edx, dword [ecx + 0x18]
push dword [edx + eax*4]
call fcn.0047a2a0
test eax, eax
jne 0x4832d8
mov ecx, dword [ebp + 0x64]
mov edx, dword [ecx + 0x18]
push eax
push dword [ebp + 0x5c]
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1c4]
push eax
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [esi + 0x4e7128]
push eax
mov eax, dword [edi + 0x44]
push dword [edx + eax*4]
call fcn.0047a449
mov dword [ebp + 0x6c], eax
jmp 0x4832c0
sub ecx, 0x10
xor eax, eax
shl ecx, 4
lea ecx, [ebp + ecx - 0x264]
mov edx, dword [ebp + eax*4 + 0xc]
cmp edx, dword [ebp + 0x60]
jae 0x4832b4
add edx, ebx
mov edx, dword [esi + edx*4]
mov dword [ecx], edx
jmp 0x4832b7
or dword [ecx], 0xffffffff
inc eax
add ecx, 4
cmp eax, 4
jb 0x4832a2
cmp dword [ebp + 0x6c], 1
je 0x4832df
inc dword [ebp + 0x74]
add ebx, dword [ebp + 0x60]
cmp dword [ebp + 0x74], 3
jb 0x4831f7
jmp 0x4832df
mov dword [ebp + 0x6c], 1
xor eax, eax
mov dword [ebp + 0x74], eax
mov dword [ebp + 0x54], eax
cmp dword [ebp + 0x4c], eax
je 0x4832f4
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + 0x74]
jmp 0x4832f7
mov ecx, dword [ebp + 0x74]
cmp dword [ecx*4 + 0x4e7134], 0x10
jb 0x48335d
cmp dword [ebp + 0x58], eax
mov dword [ebp + 0x70], eax
jbe 0x48335d
xor edi, edi
cmp dword [ebp + 0x60], eax
jbe 0x483352
mov ecx, dword [ebp + 0x70]
mov edx, dword [ebp + ecx*4 - 0x44]
mov ebx, dword [edx + 0xc]
cmp ebx, eax
mov dword [ebp + 0x68], eax
jbe 0x483343
mov ecx, dword [ebp + 0x54]
mov esi, dword [ebp + 0x44]
mov esi, dword [esi + 8]
add ecx, edi
mov esi, dword [esi + ecx*4]
mov ecx, dword [edx + 0x10]
cmp esi, dword [ecx]
je 0x48334b
inc dword [ebp + 0x68]
add ecx, 4
xor eax, eax
cmp dword [ebp + 0x68], ebx
jb 0x483332
inc edi
cmp edi, dword [ebp + 0x60]
jb 0x48331a
jmp 0x483352
mov dword [ebp + 0x6c], 1
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x70]
cmp ecx, dword [ebp + 0x58]
jb 0x483309
mov ecx, dword [ebp + 0x60]
inc dword [ebp + 0x74]
add dword [ebp + 0x54], ecx
cmp dword [ebp + 0x74], 3
jb 0x4832e7
cmp dword [ebp + 0x6c], eax
jne 0x483634
cmp dword [ebp + 0x50], eax
jne 0x48338c
xor ebx, ebx
cmp dword [ebp + 0x58], eax
mov dword [ebp + 0x54], ebx
ja 0x483555
mov edx, dword [ebp + 0x58]
mov eax, edx
shl eax, 2
mov ecx, eax
mov ebx, ecx
shr ecx, 2
lea esi, [ebp - 0x44]
lea edi, [ebp - 0x84]
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x44]
inc edx
mov dword [ebp + eax - 0x84], ecx
mov dword [ebp + 0x34], edx
xor eax, eax
mov ecx, dword [ebp + eax - 0x264]
cmp ecx, 0xffffffff
jne 0x4833d5
mov ecx, dword [ebp + eax - 0x1c4]
cmp ecx, 0xffffffff
je 0x4833dc
mov dword [ebp + eax - 0x124], ecx
add eax, 4
cmp eax, 0xa0
jb 0x4833bd
and dword [ebp + 0x6c], 0
mov eax, dword [ebp + 0x6c]
and dword [ebp + 0x48], 0
xor edx, edx
cmp eax, edx
jne 0x48365d
cmp dword [ebp + 0x5c], edx
mov dword [ebp + 0x70], edx
jbe 0x483548
mov eax, dword [ebp + 0x64]
mov ecx, dword [eax + 0x14]
mov eax, dword [ebp + 0x70]
shl eax, 2
mov edx, dword [ebp + eax - 0x124]
mov esi, dword [ecx + edx*4]
mov edx, dword [ebp + eax - 0x114]
mov edi, dword [ebp + eax - 0x104]
cmp edi, dword [ebp + eax - 0xd4]
mov edx, dword [ecx + edx*4]
mov dword [ebp + 0x3c], edx
jne 0x483690
mov ebx, dword [ebp + eax - 0xf4]
cmp ebx, dword [ebp + eax - 0xc4]
jne 0x483690
mov edx, dword [ebp + eax - 0xe4]
cmp edx, dword [ebp + eax - 0xb4]
jne 0x483690
cmp edi, ebx
jne 0x483690
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 0x10]
mov ebx, dword [esi + 4]
mov ebx, dword [eax + ebx*4]
test byte [ebx + 5], 1
mov edx, dword [ecx + edx*4]
je 0x483690
mov ebx, dword [ebp + 0x3c]
mov ebx, dword [ebx + 4]
mov ebx, dword [eax + ebx*4]
test byte [ebx + 5], 1
je 0x483690
mov ebx, dword [edx + 4]
mov eax, dword [eax + ebx*4]
test byte [eax + 5], 1
je 0x483690
fld qword [esi + 0x20]
fcomp qword [0x4de080]
fnstsw ax
test ah, 0x44
jp 0x483690
xor eax, eax
cmp dword [ebp + 0x48], eax
sete al
lea eax, [eax + eax - 1]
mov dword [ebp + 0x2c], eax
fild dword [ebp + 0x2c]
mov eax, dword [ebp + 0x3c]
fcomp qword [eax + 0x20]
fnstsw ax
test ah, 0x44
jp 0x483690
fld qword [edx + 0x20]
fcomp qword [0x4ddfa8]
fnstsw ax
test ah, 0x44
jp 0x483690
mov edi, dword [ecx + edi*4]
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0x64]
cmp eax, dword [edx + 0x88]
je 0x48350d
mov dword [ebp + 0x38], 1
mov esi, dword [ebp + 0x40]
xor eax, eax
test esi, esi
jbe 0x483524
mov edx, dword [edi + 0x44]
cmp edx, dword [ebp + eax*4 + 0xc]
je 0x483524
inc eax
cmp eax, esi
jb 0x483519
cmp eax, esi
jne 0x483539
cmp dword [ebp + 0x38], 0
jne 0x483539
mov eax, dword [edi + 0x44]
mov dword [ebp + esi*4 + 0xc], eax
inc esi
mov dword [ebp + 0x40], esi
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x5c]
jb 0x48340d
lea eax, [ebp - 0x104]
jmp 0x482c7a
xor eax, eax
mov dword [ebp + 0x70], eax
mov eax, dword [ebp + ebx*4 - 0x44]
mov eax, dword [eax + 0xc]
test eax, eax
mov dword [ebp + 0x48], eax
jbe 0x48361d
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 0xc]
test eax, eax
jbe 0x48360e
mov ecx, dword [ebp + 0x64]
mov ecx, dword [ecx + 0x18]
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x3c], eax
mov eax, dword [ebp + 0x68]
mov ecx, dword [eax]
test ecx, ecx
je 0x483601
cmp dword [ecx], 0
je 0x483601
mov edi, dword [ecx + 4]
and dword [ebp + 0x74], 0
test edi, edi
jbe 0x4835d3
mov eax, dword [ebp + ebx*4 - 0x44]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp + 0x70]
mov esi, dword [eax + edx*4]
mov edx, dword [ecx + 8]
mov eax, edi
mov edi, dword [edx]
cmp edi, esi
je 0x4835c6
mov ebx, dword [ebp + 0x64]
mov ebx, dword [ebx + 0x14]
mov edi, dword [ebx + edi*4]
cmp dword [edi + 0x38], esi
mov ebx, dword [ebp + 0x54]
jne 0x4835cd
mov dword [ebp + 0x74], 1
add edx, 4
dec eax
jne 0x4835af
cmp ecx, dword [ebp + 0x44]
jne 0x4835dc
and dword [ebp + 0x74], 0
cmp dword [ebp + 0x74], 0
je 0x483601
xor edx, edx
cmp ecx, dword [ebp + edx*4 - 0x44]
jne 0x4835ee
and dword [ebp + 0x74], 0
inc edx
cmp edx, dword [ebp + 0x58]
jb 0x4835e4
cmp dword [ebp + 0x74], 0
je 0x483601
mov dword [ebp + 0x6c], 1
add dword [ebp + 0x68], 4
dec dword [ebp + 0x3c]
jne 0x483584
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x48]
jb 0x48356a
inc ebx
cmp ebx, dword [ebp + 0x58]
mov dword [ebp + 0x54], ebx
jb 0x483553
cmp dword [ebp + 0x6c], 0
je 0x48338c
inc dword [ebp + 0x4c]
cmp dword [ebp + 0x4c], 1
jb 0x4831b6
cmp dword [ebp + 0x6c], 0
je 0x48338c
inc dword [ebp + 0x50]
cmp dword [ebp + 0x50], 1
jb 0x4831b2
jmp 0x4833ea
cmp eax, 1
jne 0x48401c
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 0xe0]
mov dword [ebp + 0x44], eax
mov eax, dword [eax]
mov ecx, eax
and ecx, 0xfffff
cmp ecx, dword [ebp + 0x5c]
mov dword [ebp + 0x60], ecx
ja 0x483690
and eax, 0xfff00000
cmp eax, 0x30000000
je 0x483698
xor eax, eax
inc eax
jmp 0x48401c
mov dword [ebp + 0x50], edx
and dword [ebp + 0x4c], 0
mov edx, dword [ebp + 0x34]
mov ecx, edx
shl ecx, 2
mov eax, ecx
shr ecx, 2
lea esi, [ebp - 0x84]
lea edi, [ebp - 0x44]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x28
pop ecx
or eax, 0xffffffff
lea edi, [ebp - 0x264]
rep stosd dword es:[edi], eax
push 0x28
xor ebx, ebx
pop ecx
lea edi, [ebp - 0x1c4]
rep stosd dword es:[edi], eax
mov dword [ebp + 0x58], edx
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x74], ebx
cmp dword [ebp + 0x4c], 0
je 0x4836f0
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + 0x74]
jmp 0x4836f3
mov ecx, dword [ebp + 0x74]
mov eax, dword [ebp + 0x44]
mov esi, dword [eax + 8]
mov edi, dword [ebp + 0x64]
mov ecx, dword [ecx*4 + 0x4e7074]
cmp ecx, 0x10
mov edi, dword [edi + 0x14]
lea edx, [esi + ebx*4]
mov eax, dword [edx]
mov edi, dword [edi + eax*4]
jae 0x48377e
mov eax, dword [edi + 0x44]
cmp eax, 0xffffffff
je 0x4837c3
shl ecx, 5
push 0
mov esi, ecx
push dword [esi + 0x4e7080]
lea ecx, [ebp - 4]
push ecx
lea ecx, [ebp + 0xc]
push ecx
push dword [ebp + 0x60]
mov ecx, dword [ebp + 0x64]
push edx
mov edx, dword [ecx + 0x18]
push dword [edx + eax*4]
call fcn.0047a2a0
test eax, eax
jne 0x4837c3
mov ecx, dword [ebp + 0x64]
mov edx, dword [ecx + 0x18]
push eax
push dword [ebp + 0x5c]
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1c4]
push eax
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [esi + 0x4e7068]
push eax
mov eax, dword [edi + 0x44]
push dword [edx + eax*4]
call fcn.0047a449
mov dword [ebp + 0x6c], eax
jmp 0x4837ab
sub ecx, 0x10
xor eax, eax
shl ecx, 4
lea ecx, [ebp + ecx - 0x264]
mov edx, dword [ebp + eax*4 + 0xc]
cmp edx, dword [ebp + 0x60]
jae 0x48379f
add edx, ebx
mov edx, dword [esi + edx*4]
mov dword [ecx], edx
jmp 0x4837a2
or dword [ecx], 0xffffffff
inc eax
add ecx, 4
cmp eax, 4
jb 0x48378d
cmp dword [ebp + 0x6c], 1
je 0x4837ca
inc dword [ebp + 0x74]
add ebx, dword [ebp + 0x60]
cmp dword [ebp + 0x74], 3
jb 0x4836e2
jmp 0x4837ca
mov dword [ebp + 0x6c], 1
xor eax, eax
mov dword [ebp + 0x74], eax
mov dword [ebp + 0x54], eax
cmp dword [ebp + 0x4c], eax
je 0x4837df
xor ecx, ecx
inc ecx
sub ecx, dword [ebp + 0x74]
jmp 0x4837e2
mov ecx, dword [ebp + 0x74]
cmp dword [ecx*4 + 0x4e7074], 0x10
jb 0x483848
cmp dword [ebp + 0x58], eax
mov dword [ebp + 0x70], eax
jbe 0x483848
xor edi, edi
cmp dword [ebp + 0x60], eax
jbe 0x48383d
mov ecx, dword [ebp + 0x70]
mov edx, dword [ebp + ecx*4 - 0x44]
mov ebx, dword [edx + 0xc]
cmp ebx, eax
mov dword [ebp + 0x68], eax
jbe 0x48382e
mov ecx, dword [ebp + 0x54]
mov esi, dword [ebp + 0x44]
mov esi, dword [esi + 8]
add ecx, edi
mov esi, dword [esi + ecx*4]
mov ecx, dword [edx + 0x10]
cmp esi, dword [ecx]
je 0x483836
inc dword [ebp + 0x68]
add ecx, 4
xor eax, eax
cmp dword [ebp + 0x68], ebx
jb 0x48381d
inc edi
cmp edi, dword [ebp + 0x60]
jb 0x483805
jmp 0x48383d
mov dword [ebp + 0x6c], 1
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x70]
cmp ecx, dword [ebp + 0x58]
jb 0x4837f4
mov ecx, dword [ebp + 0x60]
inc dword [ebp + 0x74]
add dword [ebp + 0x54], ecx
cmp dword [ebp + 0x74], 3
jb 0x4837d2
cmp dword [ebp + 0x6c], eax
jne 0x483cac
cmp dword [ebp + 0x50], eax
jne 0x483877
xor ebx, ebx
cmp dword [ebp + 0x58], eax
mov dword [ebp + 0x54], ebx
ja 0x483bcb
mov edx, dword [ebp + 0x58]
mov eax, edx
shl eax, 2
mov ecx, eax
mov ebx, ecx
shr ecx, 2
lea esi, [ebp - 0x44]
lea edi, [ebp - 0x84]
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x44]
inc edx
mov dword [ebp + eax - 0x84], ecx
mov dword [ebp + 0x34], edx
xor eax, eax
mov ecx, dword [ebp + eax - 0x264]
cmp ecx, 0xffffffff
jne 0x4838c0
mov ecx, dword [ebp + eax - 0x1c4]
cmp ecx, 0xffffffff
je 0x4838c7
mov dword [ebp + eax - 0x124], ecx
add eax, 4
cmp eax, 0xa0
jb 0x4838a8
and dword [ebp + 0x6c], 0
mov eax, dword [ebp + 0x6c]
xor edi, edi
cmp eax, edi
jne 0x48401c
cmp dword [ebp + 0x5c], edi
mov dword [ebp + 0x70], edi
jbe 0x483b14
and dword [ebp + 0x54], 0
lea eax, [ebp + edi*4 - 0xe4]
mov ecx, dword [eax - 0x30]
cmp ecx, dword [eax - 0x10]
mov dword [ebp + 0x74], ecx
jne 0x483690
mov ecx, dword [eax - 0x20]
cmp ecx, dword [eax]
mov dword [ebp + 0x68], ecx
jne 0x483690
mov ebx, dword [eax + 0x10]
cmp ebx, dword [eax + 0x30]
jne 0x483690
mov esi, dword [eax + 0x20]
cmp esi, dword [eax + 0x40]
mov dword [ebp + 0x2c], esi
jne 0x483690
mov eax, dword [ebp + 0x64]
mov ecx, dword [eax + 0x14]
mov edi, dword [ecx + esi*4]
mov esi, dword [eax + 0x10]
mov edx, dword [ecx + ebx*4]
mov eax, dword [edx + 4]
mov eax, dword [esi + eax*4]
and dword [ebp + 0x60], 0
cmp ebx, dword [ebp + 0x68]
mov dword [ebp + 0x3c], eax
mov eax, dword [edi + 4]
mov eax, dword [esi + eax*4]
mov dword [ebp + 0x48], eax
jne 0x483971
test byte [eax + 5], 1
je 0x483971
fld qword [edi + 0x20]
fcomp qword [0x4de088]
fnstsw ax
test ah, 0x44
jnp 0x483992
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x2c], eax
jne 0x483999
mov eax, dword [ebp + 0x3c]
test byte [eax + 5], 1
je 0x483999
fld qword [edx + 0x20]
fcomp qword [0x4de088]
fnstsw ax
test ah, 0x44
jp 0x483999
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x60], 0
lea eax, [ebp - 0x104]
mov dword [ebp + 0x6c], eax
jne 0x483a59
mov eax, dword [edx + 0x38]
mov ebx, dword [ebp + 0x74]
cmp eax, ebx
je 0x4839c6
cmp eax, 0xffffffff
je 0x4839f6
mov ebx, dword [ecx + ebx*4]
cmp dword [ebx + 0x38], eax
jne 0x4839f6
mov ebx, dword [ebp + 0x74]
mov eax, dword [ecx + ebx*4]
mov eax, dword [eax + 0x3c]
xor eax, 0x80000
cmp dword [edx + 0x3c], eax
jne 0x4839f6
mov eax, dword [ebp + 0x48]
test byte [eax + 5], 1
je 0x4839f6
fld qword [edi + 0x20]
fcomp qword [0x4de080]
fnstsw ax
test ah, 0x44
jp 0x4839f6
mov dword [ebp + 0x60], 1
mov ebx, dword [edi + 0x38]
mov eax, dword [ebp + 0x74]
cmp ebx, eax
je 0x483a10
cmp ebx, 0xffffffff
je 0x483a40
mov eax, dword [ecx + eax*4]
cmp dword [eax + 0x38], ebx
jne 0x483a40
mov eax, dword [ebp + 0x74]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax + 0x3c]
xor eax, 0x80000
cmp dword [edi + 0x3c], eax
jne 0x483a40
mov eax, dword [ebp + 0x3c]
test byte [eax + 5], 1
je 0x483a40
fld qword [edx + 0x20]
fcomp qword [0x4de080]
fnstsw ax
test ah, 0x44
jp 0x483a40
mov dword [ebp + 0x60], 1
xor eax, eax
inc eax
cmp dword [ebp + 0x60], 0
mov dword [ebp + 0x54], eax
je 0x48401c
lea eax, [ebp - 0x114]
mov dword [ebp + 0x6c], eax
cmp dword [ebp + 0x54], 0
mov edi, dword [ebp + 0x70]
mov eax, dword [ebp + edi*4 - 0x124]
mov eax, dword [ecx + eax*4]
mov edx, dword [ebp + 0x68]
jne 0x483a72
mov edx, dword [ebp + 0x74]
mov ebx, dword [eax + 4]
mov ebx, dword [esi + ebx*4]
test byte [ebx + 5], 1
mov edx, dword [ecx + edx*4]
je 0x483690
fld qword [eax + 0x20]
fcomp qword [0x4ddfa8]
fnstsw ax
test ah, 0x44
jp 0x483690
mov eax, dword [edx + 4]
mov eax, dword [esi + eax*4]
test byte [eax + 5], 1
je 0x483690
fld qword [edx + 0x20]
fcomp qword [0x4de080]
fnstsw ax
test ah, 0x44
jp 0x483690
mov eax, dword [ebp + 0x6c]
mov eax, dword [eax + edi*4]
mov ecx, dword [ecx + eax*4]
mov eax, dword [ecx + 4]
mov edx, dword [ebp + 0x64]
cmp eax, dword [edx + 0x88]
je 0x483adb
mov dword [ebp + 0x38], 1
mov esi, dword [ebp + 0x40]
xor eax, eax
test esi, esi
jbe 0x483af2
mov edx, dword [ecx + 0x44]
cmp edx, dword [ebp + eax*4 + 0xc]
je 0x483af2
inc eax
cmp eax, esi
jb 0x483ae7
cmp eax, esi
jne 0x483b07
cmp dword [ebp + 0x38], 0
jne 0x483b07
mov eax, dword [ecx + 0x44]
mov dword [ebp + esi*4 + 0xc], eax
inc esi
mov dword [ebp + 0x40], esi
inc edi
cmp edi, dword [ebp + 0x5c]
mov dword [ebp + 0x70], edi
jb 0x4838ee
or byte [ebp + 0x25], 2
and dword [ebp + 0x70], 0
cmp dword [ebp + 0x40], 0
jbe 0x483cdb
mov eax, dword [ebp + 0x70]
mov eax, dword [ebp + eax*4 + 0xc]
cmp eax, 0xffffffff
je 0x483dd8
mov ecx, dword [ebp + 0x64]
mov ecx, dword [ecx + 0x18]
mov ecx, dword [ecx + eax*4]
mov eax, dword [ecx]
and eax, 0xfff00000
cmp eax, 0x60000000
je 0x483cd4
cmp eax, 0x60400000
je 0x483cd4
cmp eax, 0x60800000
je 0x483cd4
cmp eax, 0x60c00000
je 0x483cd4
xor edx, edx
cmp eax, edx
je 0x483cd4
cmp dword [ebp + 0x5c], edx
mov edi, dword [ecx + 0xc]
mov dword [ebp + 0x68], edx
jbe 0x483bac
test edi, edi
jbe 0x483ba6
mov eax, dword [ebp + 0x6c]
mov esi, dword [eax + edx*4]
mov eax, dword [ecx + 0x10]
mov dword [ebp + 0x48], edi
cmp dword [eax], esi
jne 0x483b9e
inc dword [ebp + 0x68]
add eax, 4
dec dword [ebp + 0x48]
jne 0x483b97
inc edx
cmp edx, dword [ebp + 0x5c]
jb 0x483b87
cmp dword [ebp + 0x68], edi
jne 0x483dd8
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x40]
jb 0x483b26
jmp 0x483cdb
xor eax, eax
mov dword [ebp + 0x70], eax
mov eax, dword [ebp + ebx*4 - 0x44]
mov eax, dword [eax + 0xc]
test eax, eax
mov dword [ebp + 0x2c], eax
jbe 0x483c93
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 0xc]
test eax, eax
jbe 0x483c84
mov ecx, dword [ebp + 0x64]
mov ecx, dword [ecx + 0x18]
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x48], eax
mov eax, dword [ebp + 0x68]
mov ecx, dword [eax]
test ecx, ecx
je 0x483c77
cmp dword [ecx], 0
je 0x483c77
mov edi, dword [ecx + 4]
and dword [ebp + 0x74], 0
test edi, edi
jbe 0x483c49
mov eax, dword [ebp + ebx*4 - 0x44]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp + 0x70]
mov esi, dword [eax + edx*4]
mov edx, dword [ecx + 8]
mov eax, edi
mov edi, dword [edx]
cmp edi, esi
je 0x483c3c
mov ebx, dword [ebp + 0x64]
mov ebx, dword [ebx + 0x14]
mov edi, dword [ebx + edi*4]
cmp dword [edi + 0x38], esi
mov ebx, dword [ebp + 0x54]
jne 0x483c43
mov dword [ebp + 0x74], 1
add edx, 4
dec eax
jne 0x483c25
cmp ecx, dword [ebp + 0x44]
jne 0x483c52
and dword [ebp + 0x74], 0
cmp dword [ebp + 0x74], 0
je 0x483c77
xor edx, edx
cmp ecx, dword [ebp + edx*4 - 0x44]
jne 0x483c64
and dword [ebp + 0x74], 0
inc edx
cmp edx, dword [ebp + 0x58]
jb 0x483c5a
cmp dword [ebp + 0x74], 0
je 0x483c77
mov dword [ebp + 0x6c], 1
add dword [ebp + 0x68], 4
dec dword [ebp + 0x48]
jne 0x483bfa
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x2c]
jb 0x483be0
inc ebx
cmp ebx, dword [ebp + 0x58]
mov dword [ebp + 0x54], ebx
jb 0x483bc9
cmp dword [ebp + 0x6c], 0
je 0x483877
xor eax, eax
inc dword [ebp + 0x4c]
cmp dword [ebp + 0x4c], 1
jb 0x48369f
cmp dword [ebp + 0x6c], eax
je 0x483877
inc dword [ebp + 0x50]
cmp dword [ebp + 0x50], 1
jb 0x48369b
jmp 0x4838d5
mov dword [ebp + 0x38], 1
xor edx, edx
cmp dword [ebp + 0x38], edx
jne 0x483dd8
cmp dword [ebp + 0x28], edx
jne 0x483cfa
cmp dword [ebp + 0x30], edx
je 0x483cf5
mov eax, dword [ebp + 0x58]
jmp 0x483cfd
mov eax, dword [ebp + 0x44]
jmp 0x483cfd
mov eax, dword [ebp + 0x6c]
mov edi, dword [ebp + 0x64]
or ebx, 0xffffffff
cmp dword [ebp + 0x5c], edx
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x48], edx
jbe 0x483d34
mov esi, dword [edi + 0x14]
mov eax, dword [ebp + 0x70]
mov eax, dword [eax + edx*4]
mov eax, dword [esi + eax*4]
mov ecx, dword [eax + 0x54]
cmp dword [ebp + 0x48], ecx
jae 0x483d25
mov dword [ebp + 0x48], ecx
mov eax, dword [eax + 0x50]
cmp ebx, eax
jbe 0x483d2e
mov ebx, eax
inc edx
cmp edx, dword [ebp + 0x5c]
jb 0x483d11
mov eax, dword [edi + 0xc]
test eax, eax
jbe 0x483f2b
mov ecx, dword [edi + 0x18]
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x3c], eax
mov eax, dword [ebp + 0x68]
mov eax, dword [eax]
cmp dword [eax], 0
je 0x483dc1
xor ecx, ecx
cmp dword [ebp + 0x28], ecx
je 0x483d74
cmp ecx, dword [ebp + 0x34]
jae 0x483d70
cmp eax, dword [ebp + ecx*4 - 0x84]
je 0x483d6d
inc ecx
cmp ecx, dword [ebp + 0x34]
jb 0x483d5e
cmp ecx, dword [ebp + 0x34]
jne 0x483dc1
jmp 0x483d7e
cmp eax, dword [ebp + 0x20]
je 0x483dc1
cmp eax, dword [ebp + 0x1c]
je 0x483dc1
mov ecx, dword [eax + 4]
test ecx, ecx
jbe 0x483dc1
mov edx, dword [ebp + 0x64]
mov edx, dword [edx + 0x14]
mov eax, dword [eax + 8]
mov dword [ebp + 0x48], ecx
mov ecx, dword [eax]
mov ebx, dword [edx + ecx*4]
xor edi, edi
cmp dword [ebp + 0x5c], edi
jbe 0x483db9
mov esi, dword [ebp + 0x70]
mov esi, dword [esi + edi*4]
cmp esi, ecx
je 0x483dac
cmp dword [ebx + 0x38], esi
jne 0x483db3
mov dword [ebp + 0x38], 1
inc edi
cmp edi, dword [ebp + 0x5c]
jb 0x483d9d
add eax, 4
dec dword [ebp + 0x48]
jne 0x483d91
add dword [ebp + 0x68], 4
dec dword [ebp + 0x3c]
jne 0x483d48
cmp dword [ebp + 0x38], 0
je 0x483f2b
push 0x74
call fcn.0047983f
test eax, eax
je 0x483dee
mov ecx, eax
call fcn.0047951c
mov ebx, eax
jmp 0x483df0
xor ebx, ebx
xor edi, edi
cmp ebx, edi
je 0x483690
mov eax, dword [ebp + 0x5c]
push edi
push dword [ebp + 0x5c]
and eax, 0xfffff
push dword [ebp + 0x5c]
or eax, 0x10000000
push eax
mov ecx, ebx
call fcn.00479880
mov esi, eax
cmp esi, edi
mov ecx, ebx
jl 0x483e34
mov eax, dword [ebp + 0x64]
push dword [eax + 0xe0]
call fcn.0047954f
mov esi, eax
cmp esi, edi
jge 0x483e42
mov ecx, ebx
push 1
call fcn.00459894
mov eax, esi
jmp 0x48401c
mov eax, dword [ebp + 0x5c]
shl eax, 2
mov ecx, eax
mov edx, ecx
shr ecx, 2
cmp dword [ebp + 0x28], edi
jne 0x483e82
cmp dword [ebp + 0x30], edi
mov edi, dword [ebx + 8]
je 0x483e6f
mov esi, dword [ebp + 0x58]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov eax, dword [ebp + 0x20]
jmp 0x483e9c
mov esi, dword [ebp + 0x44]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov eax, dword [ebp + 0x1c]
jmp 0x483e9c
mov edi, dword [ebx + 8]
mov esi, dword [ebp + 0x6c]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 0xe0]
mov esi, dword [eax + 0x10]
mov edi, dword [ebx + 0x10]
mov edx, dword [ebp + 0x64]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
xor ecx, ecx
cmp dword [ebp + 0x5c], esi
jbe 0x483ed4
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + ecx*4]
mov edi, dword [edx + 0x14]
mov eax, dword [edi + eax*4]
mov edi, dword [ebp + 0x24]
or dword [eax + 0x3c], edi
inc ecx
cmp ecx, dword [ebp + 0x5c]
jb 0x483ebc
cmp dword [ebp + 0x28], esi
jne 0x483eea
cmp dword [ebp + 0x30], esi
je 0x483ee5
mov eax, dword [ebp + 0x20]
mov dword [eax], esi
jmp 0x483f00
mov eax, dword [ebp + 0x1c]
jmp 0x483ee1
xor eax, eax
cmp dword [ebp + 0x34], esi
jbe 0x483f00
mov ecx, dword [ebp + eax*4 - 0x84]
inc eax
cmp eax, dword [ebp + 0x34]
mov dword [ecx], esi
jb 0x483ef1
mov eax, dword [edx + 0xdc]
mov ecx, dword [edx + 0x18]
mov ecx, dword [ecx + eax*4]
cmp ecx, esi
je 0x483f1a
push 1
call fcn.00459894
mov edx, dword [ebp + 0x64]
mov eax, dword [edx + 0xdc]
mov ecx, dword [edx + 0x18]
mov dword [ecx + eax*4], ebx
jmp 0x48401a
mov edi, dword [ebp + 0x64]
xor esi, esi
xor eax, eax
cmp dword [ebp + 0x40], esi
mov dword [ebp + 0x48], eax
jbe 0x483ff3
cmp dword [ebp + 0x28], esi
mov eax, dword [ebp + eax*4 + 0xc]
mov ecx, dword [edi + 0x18]
mov edx, dword [ecx + eax*4]
jne 0x483f5c
cmp dword [ebp + 0x30], esi
je 0x483f57
mov eax, dword [ebp + 0x20]
jmp 0x483f62
mov eax, dword [ebp + 0x1c]
jmp 0x483f62
mov eax, dword [edi + 0xe0]
mov eax, dword [eax + 0xc]
xor ecx, ecx
cmp eax, esi
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], ecx
jbe 0x483fe3
cmp dword [edx + 0xc], esi
mov dword [ebp + 0x74], esi
jbe 0x483fd7
mov eax, dword [ebp + 0x6c]
shl ecx, 2
lea esi, [ecx + eax]
mov ebx, dword [ebp + 0x74]
mov eax, dword [edx + 0x10]
lea eax, [eax + ebx*4]
mov ebx, dword [eax]
cmp ebx, dword [esi]
jne 0x483fca
cmp dword [ebp + 0x28], 0
jne 0x483fa7
cmp dword [ebp + 0x30], 0
je 0x483fa2
mov ebx, dword [ebp + 0x20]
jmp 0x483fad
mov ebx, dword [ebp + 0x1c]
jmp 0x483fad
mov ebx, dword [edi + 0xe0]
mov ebx, dword [ebx + 0x10]
mov ebx, dword [ecx + ebx]
mov dword [eax], ebx
mov eax, dword [edx + 0x10]
mov ebx, dword [ebp + 0x74]
mov eax, dword [eax + ebx*4]
mov ebx, dword [edi + 0x14]
mov eax, dword [ebx + eax*4]
mov ebx, dword [ebp + 0x24]
or dword [eax + 0x3c], ebx
inc dword [ebp + 0x74]
mov eax, dword [ebp + 0x74]
cmp eax, dword [edx + 0xc]
jb 0x483f82
xor esi, esi
mov ecx, dword [ebp + 0x60]
inc ecx
cmp ecx, dword [ebp + 0x68]
mov dword [ebp + 0x60], ecx
jb 0x483f71
mov eax, dword [ebp + 0x48]
inc eax
cmp eax, dword [ebp + 0x40]
mov dword [ebp + 0x48], eax
jb 0x483f3e
cmp dword [ebp + 0x28], esi
jne 0x484004
mov eax, dword [ebp + 0x1c]
mov dword [eax], esi
mov eax, dword [ebp + 0x20]
mov dword [eax], esi
jmp 0x48401a
xor eax, eax
cmp dword [ebp + 0x34], esi
jbe 0x48401a
mov ecx, dword [ebp + eax*4 - 0x84]
inc eax
cmp eax, dword [ebp + 0x34]
mov dword [ecx], esi
jb 0x48400b
xor eax, eax
pop edi
pop esi
pop ebx
add ebp, 0x78
leave
ret