Function at 0x50cbe0
Capabilities:
Encode data using base64
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x730b35
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov esi, ecx
push eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x18], eax
call fcn.005161a0
test al, al
jne 0x50cc34
mov eax, dword [ebp - 0x18]
mov ecx, esi
push eax
call fcn.005160f0
mov eax, dword [esi + 0x20]
lea ecx, [esi + 0x1c]
lea edx, [ebp - 0x18]
mov eax, dword [eax]
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.0042f190
mov eax, dword [ebp + 8]
xor edi, edi
xor ebx, ebx
cmp eax, 0xb8
ja case.0x50cc46.54
jmp dword [eax*4 + 0x511d10]
mov ebx, dword [esi + 0x1d8]
cmp ebx, edi
jne 0x50ccec
push 0xa8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], edi
je 0x50cc7d
mov ecx, eax
call fcn.0046d0f0
mov ebx, eax
jmp 0x50cc7f
xor ebx, ebx
push 0x37
push 0xdc
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1d8], ebx
call fcn.004fd930
mov edx, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [edx + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1d8]
push 0
push 0
lea eax, [esi + 0x4a4]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437da0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov eax, dword [esi + 0x4d8]
test eax, eax
je 0x50cd08
push 8
mov ecx, esi
call fcn.0050cbe0
mov eax, dword [esi + 0x524]
test eax, eax
je 0x50cd1b
push 0xa
mov ecx, esi
call fcn.0050cbe0
mov eax, dword [esi + 0x53c]
test eax, eax
je 0x50cd2e
push 0xd
mov ecx, esi
call fcn.0050cbe0
mov eax, dword [esi + 0x6e4]
test eax, eax
je 0x50cd41
push 0x25
mov ecx, esi
call fcn.0050cbe0
mov eax, dword [esi + 0x4f4]
test eax, eax
je 0x50cd57
push 0x86
mov ecx, esi
call fcn.00509b10
mov ecx, 0x814260
call fcn.00533580
mov ecx, dword [eax + 0x294]
test ecx, ecx
je 0x50cd74
push 0xe
mov ecx, esi
call fcn.0050cbe0
mov eax, dword [esi + 0x4c]
mov ecx, esi
push eax
push 1
call fcn.0050c8b0
mov ecx, dword [esi + 0x6c0]
push ecx
push 0x24
mov ecx, esi
call fcn.0050c8b0
push 0
push 0xf
mov ecx, esi
call fcn.0050c8b0
mov eax, dword [esi + 0x6a8]
test eax, eax
je 0x50cdaf
push 0x45
mov ecx, esi
call fcn.0050cbe0
mov eax, dword [0x83e0b8]
test eax, eax
je 0x511cdd
mov eax, dword [0x83e0bc]
test eax, eax
je 0x511cdd
mov ecx, dword [0x83e83c]
mov eax, 2
cmp ecx, eax
jne 0x511cdd
cmp dword [0x83e840], eax
jne 0x511cdd
push 0x39
mov ecx, esi
call fcn.0050cbe0
jmp 0x511cdd
mov ebx, dword [esi + 0x1c8]
cmp ebx, edi
jne 0x50ce62
push 0xec
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 1
je 0x50ce26
mov ecx, eax
call fcn.004a52f0
mov ebx, eax
jmp 0x50ce28
xor ebx, ebx
mov dword [esi + 0x1c8], ebx
mov edx, dword [esi + 0x48]
push edx
push 0x258
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1c8]
push 0
push 0
push 0
mov edx, dword [ecx]
push 0
push 0x22
push 0
call dword [edx + 0x90]
jmp 0x511cdd
push 0x80
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 2
je 0x50cea7
mov ecx, eax
call fcn.00459c10
mov ebx, eax
jmp 0x50cea9
xor ebx, ebx
push 0xc8
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 2
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
mov eax, dword [0x7a0f18]
sar edx, 8
mov eax, dword [eax + 0x24]
mov ecx, edx
shr ecx, 0x1f
sub eax, 0x280
lea edx, [edx + ecx - 0x50]
mov ecx, ebx
push edx
cdq
sub eax, edx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
push 0x90
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 3
je 0x50cf57
mov ecx, eax
call fcn.0045a5d0
mov ebx, eax
jmp 0x50cf59
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1cc], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [ecx + 0x28]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 2
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
push 0x120
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 4
je 0x50d008
mov ecx, eax
call fcn.0045b900
mov ebx, eax
jmp 0x50d00a
xor ebx, ebx
push 0x190
push 0x258
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [ecx + 0x28]
sub eax, 0x1e0
cdq
sub eax, edx
mov edx, ecx
sar eax, 1
add eax, 0x28
mov ecx, ebx
push eax
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0x21
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
push 0x1d8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 5
je 0x50d09b
mov ecx, eax
call fcn.0045f8f0
mov ebx, eax
jmp 0x50d09d
xor ebx, ebx
push 0x156
push 0x240
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [ecx + 0x28]
sub eax, 0x1e0
cdq
sub eax, edx
mov edx, ecx
sar eax, 1
add eax, 0x41
mov ecx, ebx
push eax
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0x21
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
push 0xe4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 6
je 0x50d12e
mov ecx, eax
call fcn.0045c9e0
mov ebx, eax
jmp 0x50d130
xor ebx, ebx
push 0x156
push 0x240
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3a4], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [ecx + 0x28]
sub eax, 0x1e0
cdq
sub eax, edx
mov edx, ecx
sar eax, 1
add eax, 0x41
mov ecx, ebx
push eax
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0x21
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov eax, dword [0x7db4e8]
mov ecx, dword [0x7db4e4]
mov edx, eax
mov dword [ebp - 0x18], ecx
cmp eax, edx
mov dword [ebp - 0x24], edx
je 0x50d1dd
mov edx, eax
add eax, 0xc
mov edi, dword [edx]
mov dword [ecx], edi
mov edi, dword [edx + 4]
mov dword [ecx + 4], edi
mov edx, dword [edx + 8]
mov dword [ecx + 8], edx
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x24]
add ecx, 0xc
cmp eax, edx
mov dword [ebp - 0x18], ecx
jne 0x50d1b3
mov eax, dword [0x7db4e8]
mov dword [ebp - 0x24], eax
mov eax, dword [0x83e040]
mov dword [0x7db4e8], ecx
mov dword [ebp - 0x24], eax
mov edi, dword [eax]
cmp edi, eax
je 0x511cdd
mov eax, edi
mov edi, dword [edi]
push eax
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x83e03c
call fcn.00518c90
cmp edi, dword [ebp - 0x24]
jne 0x50d1f8
jmp 0x511cdd
mov ebx, dword [esi + 0x1d0]
cmp ebx, edi
jne 0x50d2b8
push 0xc8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 7
je 0x50d249
mov ecx, eax
call fcn.004e62f0
mov ebx, eax
jmp 0x50d24b
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1d0], ebx
call fcn.004fd930
mov edx, dword [ebx]
push 0x78
push 0
mov ecx, ebx
call dword [edx + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1d0]
push 0
push 0
lea eax, [esi + 0x4b4]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x4d8], 1
jmp 0x511cdd
mov ebx, dword [esi + 0x1d4]
cmp ebx, edi
jne 0x50d376
push 0xc8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 8
je 0x50d304
mov ecx, eax
call fcn.004e7ac0
mov ebx, eax
jmp 0x50d306
xor ebx, ebx
push 0xdc
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1d4], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
push 0
mov ecx, ebx
call dword [eax + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1d4]
push 0
push 0
lea eax, [esi + 0x4dc]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
push 0x8f
mov ecx, esi
call fcn.00509b10
mov dword [esi + 0x4f4], 1
jmp 0x511cdd
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 9
je 0x50d3bd
mov ecx, eax
call fcn.0046cba0
mov ebx, eax
jmp 0x50d3bf
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 2
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
mov ebx, dword [esi + 0x1bc]
cmp ebx, edi
jne 0x511cd4
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0xa
je 0x50d474
mov ecx, eax
call fcn.0046ce50
mov ebx, eax
jmp 0x50d476
xor ebx, ebx
push 0xf
push 0xf0
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1bc], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [ecx + 0x28]
cdq
sub eax, edx
mov edx, ecx
sar eax, 1
add eax, 0xa0
mov ecx, ebx
push eax
mov eax, dword [edx + 0x24]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x64
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cd4
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0xb
je 0x50d4ff
mov ecx, eax
call fcn.0046e7e0
mov ebx, eax
jmp 0x50d501
xor ebx, ebx
push 0x78
push 0xc8
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 2
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
mov ebx, dword [esi + 0x1e8]
cmp ebx, edi
jne 0x511cdd
push 0x178
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0xc
je 0x50d5b9
mov ecx, eax
call fcn.004acf80
mov ebx, eax
jmp 0x50d5bb
xor ebx, ebx
push 0x22
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1e8], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov eax, 0x88888889
mov edi, dword [ebx]
mov ecx, dword [ecx + 0x28]
imul ecx, ecx, 0xc8
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1e8]
push 0
push 0
lea eax, [esi + 0x6b0]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
jmp 0x511cdd
mov ebx, dword [esi + 0x1dc]
cmp ebx, edi
jne 0x50d752
push 0xc0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0xd
je 0x50d69c
mov ecx, eax
call fcn.0046ec10
mov ebx, eax
jmp 0x50d69e
xor ebx, ebx
push 0xa7
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1dc], ebx
push 0x118
mov ecx, ebx
mov dword [ebx + 0x60], edi
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [ecx + 0x28]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 2
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1dc]
push 0
push 0
lea eax, [esi + 0x510]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x524], 1
jmp 0x511cdd
mov ebx, dword [esi + 0x1e0]
cmp ebx, edi
jne 0x511cd4
push 0x208
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0xe
je 0x50d79e
mov ecx, eax
call fcn.00472170
mov ebx, eax
jmp 0x50d7a0
xor ebx, ebx
push 0x1e0
push 0x280
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1e0], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
lea ecx, [eax + eax*2]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 1
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
jmp 0x511cd4
mov ebx, dword [esi + 0x1c4]
cmp ebx, edi
jne 0x50d8c7
push 0x8c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0xf
je 0x50d863
mov ecx, eax
call fcn.00474cc0
mov ebx, eax
jmp 0x50d865
xor ebx, ebx
push 0x67
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1c4], ebx
call fcn.004fd930
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x1c4]
push 0
push 0
lea eax, [esi + 0x4f8]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
push 0x15
mov ecx, esi
mov dword [esi + 0x50c], 1
call fcn.00509b10
jmp 0x511cdd
mov ebx, dword [esi + 0x2a8]
cmp ebx, edi
jne 0x50d9ba
push 0x26c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x10
je 0x50d91c
mov ecx, eax
call fcn.004b1cf0
mov ebx, eax
jmp 0x50d91e
xor ebx, ebx
push 0x190
push 0x230
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2a8], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0x32
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0x32
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x2a8]
push 0
push 0
lea eax, [esi + 0x6d4]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
push 0x31
mov ecx, esi
mov dword [esi + 0x6e4], 1
call fcn.00509b10
jmp 0x511cdd
mov ebx, dword [esi + 0x270]
cmp ebx, edi
jne 0x511cd4
push 0x124
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x11
je 0x50da0f
mov ecx, eax
call fcn.004ec2a0
mov ebx, eax
jmp 0x50da11
xor ebx, ebx
push 0x14a
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x270], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x270]
push 0
push 0
lea eax, [esi + 0x594]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
add eax, 0xffffff6e
mov dword [ebp - 0x18], eax
lea eax, [esi + eax*4 + 0x274]
mov dword [ebp - 0x14], eax
mov ebx, dword [eax]
cmp ebx, edi
jne 0x511cd4
push 0x100
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x20], eax
cmp eax, edi
mov dword [ebp - 4], 0x12
je 0x50daf3
mov ecx, eax
call fcn.004e8d80
mov ebx, eax
jmp 0x50daf5
xor ebx, ebx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
mov dword [eax], ebx
mov ecx, dword [ebp - 0x18]
push ecx
mov ecx, ebx
call fcn.004ea140
mov edx, dword [ebp - 0x18]
push 0x91
add edx, 0x5b9
push 0x8c
mov ecx, ebx
mov dword [ebp - 0x20], edx
call fcn.004fd930
mov eax, dword [ebp - 0x20]
push eax
call fcn.00581bb0
mov dl, byte [ebp + 0xb]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], ecx
mov byte [ecx], dl
call fcn.00420200
mov edi, dword [ebp - 0x1c]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [ebp - 0x20], ecx
push ecx
mov ecx, dword [ebp - 0x10]
call fcn.004219e0
test al, al
je 0x50db94
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov esi, dword [ebp - 0x1c]
mov edx, ecx
mov edi, dword [eax + 4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
push eax
call fcn.004219c0
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ecx]
call fcn.004ea0c0
mov edx, dword [0x7a0f18]
mov eax, 0x88888889
mov edi, dword [ebx]
mov ecx, dword [edx + 0x28]
imul ecx, ecx, 0xc8
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
shl eax, 4
mov ecx, dword [ecx]
push 0
push 0
lea eax, [eax + esi + 0x5a8]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
mov ebx, dword [esi + 0x290]
cmp ebx, edi
jne 0x511cd4
push 0x104
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x20], eax
cmp eax, edi
mov dword [ebp - 4], 0x13
je 0x50dc59
mov ecx, eax
call fcn.004ea770
mov ebx, eax
jmp 0x50dc5b
xor ebx, ebx
push 0x91
push 0x8c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x290], ebx
call fcn.004fd930
push 0x447
call fcn.00581bb0
sub esp, 0xc
mov dword [ebp - 0x20], eax
mov al, byte [ebp + 0xb]
mov ecx, esp
mov dword [ebp - 0x1c], esp
push 0
mov dword [ebp - 0x18], ecx
mov byte [ecx], al
call fcn.00420200
mov edi, dword [ebp - 0x20]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [ebp - 0x1c], ecx
push ecx
mov ecx, dword [ebp - 0x18]
call fcn.004219e0
test al, al
je 0x50dce5
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov edi, dword [ecx + 4]
mov ecx, dword [ebp - 0x1c]
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x18]
call fcn.004219c0
mov esi, dword [ebp - 0x24]
mov ecx, dword [esi + 0x290]
call fcn.004ebe00
mov ecx, dword [0x7a0f18]
mov eax, 0x88888889
mov edi, dword [ebx]
mov ecx, dword [ecx + 0x28]
imul ecx, ecx, 0xc8
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x290]
push 0
push 0
lea eax, [esi + 0x618]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
cmp dword [esi + 0x2a4], edi
jne case.0x50cc46.54
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x14
je 0x50dda0
mov ecx, eax
call fcn.0049d810
mov ebx, eax
jmp 0x50dda2
xor ebx, ebx
push 0xc7
push 0x140
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2a4], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cdd
cmp dword [esi + 0x29c], edi
jne case.0x50cc46.54
push 0x9c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x15
je 0x50de5b
mov ecx, eax
call fcn.0049dab0
mov ebx, eax
jmp 0x50de5d
xor ebx, ebx
push 0xc7
push 0x98
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x29c], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov eax, 0x88888889
mov edi, dword [ebx]
mov ecx, dword [ecx + 0x28]
imul ecx, ecx, 0xc8
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x29c]
push 0
push 0
lea eax, [esi + 0x658]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
jmp 0x511cdd
mov ebx, dword [esi + 0x294]
cmp ebx, edi
jne 0x50dfd8
push 0x198
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x16
je 0x50df36
mov ecx, eax
call fcn.0049e420
mov ebx, eax
jmp 0x50df38
xor ebx, ebx
push 0xc7
push 0x98
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x294], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov eax, 0x88888889
mov edi, dword [ebx]
mov ecx, dword [ecx + 0x28]
imul ecx, ecx, 0xc8
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x294]
push 0
push 0
lea eax, [esi + 0x648]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [0x83e560], 1
jmp 0x511cdd
mov eax, dword [esi + 0x298]
cmp eax, edi
jne 0x50e0e0
cmp dword [esi + 0x294], edi
jne 0x50e0d8
push 0x17c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x17
je 0x50e030
mov ecx, eax
call fcn.0049ede0
mov ebx, eax
jmp 0x50e032
xor ebx, ebx
push 0x15e
push 0x168
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x298], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x298]
push 0
push 0
lea eax, [esi + 0x638]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
jmp 0x511cdd
cmp eax, edi
je case.0x50cc46.54
cmp dword [esi + 0x294], edi
jne case.0x50cc46.54
push 0xa8
mov ecx, 0x7dabc0
call fcn.00509b10
jmp case.0x50cc46.54
cmp dword [esi + 0x2a0], edi
jne 0x50e1d9
push 0x1b0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x18
je 0x50e132
mov ecx, eax
call fcn.004a0b00
mov ebx, eax
jmp 0x50e134
xor ebx, ebx
push 0x15e
push 0x226
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2a0], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov eax, 0x88888889
mov edi, dword [ebx]
mov ecx, dword [ecx + 0x28]
imul ecx, ecx, 0xc8
imul ecx
add edx, ecx
mov dword [ebp - 0x24], ecx
mov ecx, dword [0x7a0f18]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
push edx
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x2a0]
push 0
push 0
lea eax, [esi + 0x628]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
jmp 0x511cdd
push 0xa9
mov ecx, 0x7dabc0
call fcn.00509b10
jmp case.0x50cc46.54
mov eax, dword [esi + 0x6ac]
push 0x22
cmp eax, edi
mov ecx, esi
je 0x50e208
call fcn.0050cbe0
mov edx, dword [eax]
push edi
push edi
push 2
jmp 0x50e213
call fcn.0050cbe0
mov edx, dword [eax]
push edi
push edi
push 1
push 0x99
push 6
push edi
mov ecx, eax
call dword [edx + 0x90]
jmp case.0x50cc46.54
push 0x45
mov ecx, esi
call fcn.00509b10
mov ebx, dword [esi + 0x2ac]
cmp ebx, edi
jne 0x50e308
push 0x170
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x19
je 0x50e265
mov ecx, eax
call fcn.004f49f0
mov ebx, eax
jmp 0x50e267
xor ebx, ebx
push 0x9b
push 0x8c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2ac], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov ecx, dword [esi + 0x2ac]
push 0
push 0
lea eax, [esi + 0x698]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x6a8], 1
jmp 0x511cdd
mov ebx, dword [esi + 0x2e0]
cmp ebx, edi
jne 0x50e3f4
push 0xf4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x1a
je 0x50e355
push edi
mov ecx, eax
call fcn.004f1cd0
mov ebx, eax
jmp 0x50e357
xor ebx, ebx
push 0xdc
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2e0], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x70c]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
push 0x2a
mov ecx, esi
call fcn.0050cbe0
jmp 0x511cdd
mov ebx, dword [esi + 0x2dc]
cmp ebx, edi
jne 0x511cd4
push 0xa8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x1b
je 0x50e440
push edi
mov ecx, eax
call fcn.004e55d0
mov ebx, eax
jmp 0x50e442
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2dc], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
lea ecx, [eax + eax*2]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 3
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x6fc]
jmp 0x511cc7
cmp dword [esi + 0x390], edi
jne 0x50e5d5
cmp dword [esi + 0x394], edi
jne 0x50e5d5
mov ebx, dword [esi + 0x2d8]
cmp ebx, edi
jne 0x50e5bd
push 0xac
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x1c
je 0x50e51e
mov ecx, eax
call fcn.004e4900
mov ebx, eax
jmp 0x50e520
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2d8], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
lea ecx, [eax + eax*2]
mov eax, 0x88888889
lea ecx, [ecx + ecx*4]
shl ecx, 3
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x6e8]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x6f8], 1
jmp 0x511cdd
push edi
push edi
push edi
push edi
push 3
mov ecx, 0x7dabc0
call fcn.00512f20
push edi
push edi
push 0xff
push 0x496
jmp 0x5111e1
mov ebx, dword [esi + 0x300]
cmp ebx, edi
jne 0x511cd4
push 0x94
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x1d
je 0x50e62a
mov ecx, eax
call fcn.00475b20
mov ebx, eax
jmp 0x50e62c
xor ebx, ebx
push 0xaf
push 0x104
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x300], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x78c]
jmp 0x511cc7
mov ebx, dword [esi + 0x304]
cmp ebx, edi
jne 0x511cd4
push 0xec
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x1e
je 0x50e6f5
mov ecx, eax
call fcn.00477f40
mov ebx, eax
jmp 0x50e6f7
xor ebx, ebx
push 0x20
push 0xb4
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x304], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
push 0x33
mov ecx, ebx
mov eax, dword [eax + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xdc
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cd4
mov ebx, dword [esi + 0x2f8]
cmp ebx, edi
jne 0x511cd4
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x1f
je 0x50e786
mov ecx, eax
call fcn.00478580
mov ebx, eax
jmp 0x50e788
xor ebx, ebx
push 0x2e
push 0xb0
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2f8], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cd4
mov ebx, dword [esi + 0x2fc]
cmp ebx, edi
jne 0x511cd4
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x20
je 0x50e83d
mov ecx, eax
call fcn.004789b0
mov ebx, eax
jmp 0x50e83f
xor ebx, ebx
push 0x2e
push 0x15a
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2fc], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edi, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, 0x88888889
imul ecx, ecx, 0xc8
imul ecx
mov eax, ecx
mov dword [ebp - 0x24], ecx
add edx, eax
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, ebx
push edx
mov edx, dword [0x7a0f18]
mov eax, dword [edx + 0x24]
sub eax, 0x280
cdq
sub eax, edx
sar eax, 1
add eax, 0xc8
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
push edx
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00517720
jmp 0x511cd4
mov ebx, dword [esi + 0x2f4]
cmp ebx, edi
jne 0x511cd4
push 0x78
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x24], eax
cmp eax, edi
mov dword [ebp - 4], 0x21
je 0x50e8f4
mov ecx, eax
call fcn.00478dc0
mov ebx, eax
jmp 0x50e8f6
xor ebx, ebx
push 0x30
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2f4], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
sub eax, 0x1e0
cdq
sub eax, edx
sar eax, 1
add eax, 0xb4
push eax
mov eax, dword [ecx + 0x24]
sub eax, 0x280
mov ecx, ebx
cdq
sub eax, edx
sar eax, 1
add eax, 0xb9
push eax
call dword [edi + 0x18]
mov eax, dword [esi + 0x17c]
lea ecx, [esi + 0x178]
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], ebx
push edx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00517720
jmp 0x511cd4
lea edi, [esi + 0x79c]
mov ecx, edi
call fcn.004fb450
test eax, eax
jne 0x50e983
mov ecx, edi
call fcn.004fb4b0
mov eax, dword [esi + 0x7ac]
cmp eax, 6
ja case.0x50cc46.54
jmp dword [eax*4 + 0x511ff4]
push 0x3c
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
push 0x3d
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
push 0x3e
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
push 0x3f
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
push pe_nt_image_headers32
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
push 0x41
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
push 0x42
mov ecx, 0x7dabc0
call fcn.0050cbe0
mov ebx, eax
jmp 0x511cdd
mov ebx, dword [esi + 0x30c]
cmp ebx, edi
jne 0x511cd4
push 0x12c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x22
je 0x50ea52
mov ecx, eax
call fcn.004c7940
mov ebx, eax
jmp 0x50ea54
xor ebx, ebx
mov dword [esi + 0x30c], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x79c]
jmp 0x511cc7
mov ebx, dword [esi + 0x310]
cmp ebx, edi
jne 0x511cd4
push 0x1bc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x23
je 0x50ead2
mov ecx, eax
call fcn.004cc450
mov ebx, eax
jmp 0x50ead4
xor ebx, ebx
mov dword [esi + 0x310], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
add eax, 0x18
push 0
mov dword [ebp - 0x10], eax
call fcn.00512060
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
jmp 0x50ea83
mov ebx, dword [esi + 0x314]
cmp ebx, edi
jne 0x511cd4
push 0x110
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x24
je 0x50eb4d
mov ecx, eax
call fcn.004ce2c0
mov ebx, eax
jmp 0x50eb4f
xor ebx, ebx
mov dword [esi + 0x314], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
add eax, 0x18
push 0
mov dword [ebp - 0x10], eax
call fcn.00512060
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
jmp 0x50ea83
mov ebx, dword [esi + 0x318]
cmp ebx, edi
jne 0x511cd4
push 0xec
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x25
je 0x50ebc8
mov ecx, eax
call fcn.004cff30
mov ebx, eax
jmp 0x50ebca
xor ebx, ebx
mov dword [esi + 0x318], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
add eax, 0x18
push 0
mov dword [ebp - 0x10], eax
call fcn.00512060
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
jmp 0x50ea83
mov ebx, dword [esi + 0x31c]
cmp ebx, edi
jne 0x511cd4
push 0xb0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x26
je 0x50ec43
mov ecx, eax
call fcn.004d0a80
mov ebx, eax
jmp 0x50ec45
xor ebx, ebx
mov dword [esi + 0x31c], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
add eax, 0x18
push 0
mov dword [ebp - 0x10], eax
call fcn.00512060
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
jmp 0x50ea83
mov ebx, dword [esi + 0x320]
cmp ebx, edi
jne 0x511cd4
push 0xc4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x27
je 0x50ecbe
mov ecx, eax
call fcn.004d13c0
mov ebx, eax
jmp 0x50ecc0
xor ebx, ebx
mov dword [esi + 0x320], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
add eax, 0x18
push 0
mov dword [ebp - 0x10], eax
call fcn.00512060
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
jmp 0x50ea83
mov ebx, dword [esi + 0x308]
cmp ebx, edi
jne 0x511cd4
push 0xc4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x28
je 0x50ed39
mov ecx, eax
call fcn.004c5df0
mov ebx, eax
jmp 0x50ed3b
xor ebx, ebx
mov dword [esi + 0x308], ebx
mov ecx, dword [0x76e974]
mov eax, dword [0x76e970]
push ecx
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x93
add eax, 0x18
push 0
mov dword [ebp - 0x10], eax
call fcn.00512060
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
jmp 0x50ea83
mov ebx, dword [esi + 0x328]
cmp ebx, edi
jne 0x511cd4
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x29
je 0x50edb1
mov ecx, eax
call fcn.004d1e00
mov ebx, eax
jmp 0x50edb3
xor ebx, ebx
push 0x50
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x328], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
jmp 0x511392
mov ebx, dword [esi + 0x330]
cmp ebx, edi
jne 0x50ee62
push 0x78
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x2a
je 0x50ee0a
mov ecx, eax
call fcn.004d55f0
mov ebx, eax
jmp 0x50ee0c
xor ebx, ebx
push 4
push 4
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x330], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.00506830
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax + pe_nt_image_headers32]
jmp 0x511cdd
mov edx, dword [ebx]
push edi
push edi
push edi
push 0xffffffffffffffff
push 0x22
push edi
mov ecx, ebx
call dword [edx + 0x90]
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax + pe_nt_image_headers32]
jmp 0x511cdd
mov ebx, dword [esi + 0x32c]
cmp ebx, edi
jne 0x51196a
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x2b
je 0x50eeb3
mov ecx, eax
call fcn.004d2310
mov ebx, eax
jmp 0x50eeb5
xor ebx, ebx
push 0x50
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x32c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
jmp 0x511952
mov ebx, dword [esi + 0x324]
cmp ebx, edi
jne 0x511cd4
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x2c
je 0x50ef1e
mov ecx, eax
call fcn.004f7ff0
mov ebx, eax
jmp 0x50ef20
xor ebx, ebx
push 0x5a
push 0xd5
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x324], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, ebx
push eax
call dword [edx]
push ebx
mov ecx, esi
call fcn.005067d0
mov eax, dword [ebx]
push 0
push 0
lea ecx, [esi + 0x7d4]
push 0
push ecx
push 0x22
push 0
mov ecx, ebx
call dword [eax + 0x90]
jmp 0x511cd4
mov ebx, dword [esi + 0x2f0]
cmp ebx, edi
jne 0x511cd4
push 0x8c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x2d
je 0x50efbf
mov ecx, eax
call fcn.00488ad0
mov ebx, eax
jmp 0x50efc1
xor ebx, ebx
mov ecx, 0x83a9e0
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2f0], ebx
call fcn.006ccf80
neg eax
sbb eax, eax
mov ecx, ebx
and eax, 0x41
add eax, 0xb4
push eax
push 0x82
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x77c]
jmp 0x511cc7
mov ebx, dword [esi + 0x368]
cmp ebx, edi
jne 0x511cd4
push 0x70
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x2e
je 0x50f065
mov ecx, eax
call fcn.004d5b50
mov ebx, eax
jmp 0x50f067
xor ebx, ebx
push 0x22
push 0x22
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x368], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x364]
cmp ebx, edi
jne 0x51196a
push 0x100
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x2f
je 0x50f0cb
mov ecx, eax
call fcn.004d5da0
mov ebx, eax
jmp 0x50f0cd
xor ebx, ebx
mov dword [esi + 0x364], ebx
mov edx, dword [esi + 0x70]
mov eax, 0x124
mov ecx, 0x22
cmp edx, edi
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], ecx
je 0x50f101
mov eax, 0x78
mov ecx, 0xd4
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], ecx
push ecx
push eax
mov ecx, ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov edi, dword [ebp - 0x24]
mov eax, dword [ebx]
mov edx, dword [ecx + 0x28]
sub edx, edi
mov edi, dword [ebp - 0x20]
push edx
mov edx, dword [ecx + 0x24]
sub edx, edi
mov ecx, ebx
push edx
call dword [eax + 0x18]
jmp 0x511962
mov ebx, dword [esi + 0x2d4]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x30
je 0x50f15f
mov ecx, eax
call fcn.00482d40
mov ebx, eax
jmp 0x50f161
xor ebx, ebx
push 0xb4
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2d4], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
jmp 0x511952
mov ebx, dword [esi + 0x2cc]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x31
je 0x50f1cd
mov ecx, eax
call fcn.00484ab0
mov ebx, eax
jmp 0x50f1cf
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2cc], ebx
push 0x78
push 0x118
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
jmp 0x511952
mov ebx, dword [esi + 0x2d0]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x32
je 0x50f23b
mov ecx, eax
call fcn.00464d30
mov ebx, eax
jmp 0x50f23d
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2d0], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2b0]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x33
je 0x50f27d
mov ecx, eax
call fcn.00483890
mov ebx, eax
jmp 0x50f27f
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2b0], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2b4]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x34
je 0x50f2c2
mov ecx, eax
call fcn.00483b90
mov ebx, eax
jmp 0x50f2c4
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2b4], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2b8]
cmp ebx, edi
jne 0x51196a
push 0x70
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x35
je 0x50f307
mov ecx, eax
call fcn.00483ec0
mov ebx, eax
jmp 0x50f309
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2b8], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2bc]
cmp ebx, edi
jne 0x51196a
push 0x70
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x36
je 0x50f34c
mov ecx, eax
call fcn.00484110
mov ebx, eax
jmp 0x50f34e
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2bc], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2c0]
cmp ebx, edi
jne 0x51196a
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x37
je 0x50f391
mov ecx, eax
call fcn.00484350
mov ebx, eax
jmp 0x50f393
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2c0], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2c4]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x38
je 0x50f3d6
mov ecx, eax
call fcn.00484570
mov ebx, eax
jmp 0x50f3d8
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2c4], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x2c8]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x39
je 0x50f41b
mov ecx, eax
call fcn.004848d0
mov ebx, eax
jmp 0x50f41d
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2c8], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x26c]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x3a
je 0x50f460
mov ecx, eax
call fcn.004821e0
mov ebx, eax
jmp 0x50f462
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x26c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, ebx
push eax
call dword [edx]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x26c]
push 0
push 0
lea edx, [esi + 0x6c4]
mov eax, dword [ecx]
push 0
push edx
push 0x22
push 0
call dword [eax + 0x90]
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax + pe_nt_image_headers32]
jmp 0x511cdd
mov ebx, dword [esi + 0x268]
cmp ebx, edi
jne 0x51196a
push 0xc4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x3b
je 0x50f511
mov ecx, eax
call fcn.00486e10
mov ebx, eax
jmp 0x50f513
xor ebx, ebx
push 0x179
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x268], ebx
push 0x230
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x64
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0x64
jmp 0x511952
mov ebx, dword [esi + 0x264]
cmp ebx, edi
jne 0x51196a
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x3c
je 0x50f57c
mov ecx, eax
call fcn.004796b0
mov ebx, eax
jmp 0x50f57e
xor ebx, ebx
push 0x2e
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x264], ebx
push 0xb0
jmp 0x50f1e3
mov ebx, dword [esi + 0x1ec]
cmp ebx, edi
jne 0x511cdd
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x3d
je 0x50f5c8
mov ecx, eax
call fcn.004d6790
mov ebx, eax
jmp 0x50f5ca
xor ebx, ebx
push 0x2e
push 0xb6
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1ec], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, ebx
push eax
call dword [edx]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cdd
mov ebx, dword [esi + 0x1f0]
cmp ebx, edi
jne 0x511cd4
push 0x8c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x3e
je 0x50f651
mov ecx, eax
call fcn.00479b30
mov ebx, eax
jmp 0x50f653
xor ebx, ebx
push 0xb4
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1f0], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x64
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x1f0]
push 0
push 0
lea eax, [esi + 0x564]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
mov ebx, dword [esi + 0x260]
cmp ebx, edi
jne 0x511cd4
push 0xcc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x3f
je 0x50f6f3
mov ecx, eax
call fcn.00461f10
mov ebx, eax
jmp 0x50f6f5
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x260], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x260]
push 0
push 0
lea eax, [esi + 0x584]
mov edx, dword [ecx]
push 0
push eax
push 0x35
push 0
jmp 0x511cce
mov ebx, dword [esi + 0x208]
cmp ebx, edi
jne 0x511cd4
push 0x78
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], pe_nt_image_headers32
je 0x50f792
mov ecx, eax
call fcn.0047e360
mov ebx, eax
jmp 0x50f794
xor ebx, ebx
push 0x78
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x208], ebx
push 0x118
jmp 0x51137e
mov ebx, dword [esi + 0x1f4]
cmp ebx, edi
jne 0x511cd4
push 0x80
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x41
je 0x50f7e1
mov ecx, eax
call fcn.0047ed70
mov ebx, eax
jmp 0x50f7e3
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1f4], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x1f4]
push 0
push 0
lea eax, [esi + 0x574]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
mov ebx, dword [esi + 0x204]
cmp ebx, edi
jne 0x511cd4
push 0xa0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x42
je 0x50f883
mov ecx, eax
call fcn.004808e0
mov ebx, eax
jmp 0x50f885
xor ebx, ebx
push 0xc8
push 0xc8
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x204], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x204]
push 0
push 0
lea eax, [esi + 0x7e4]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
mov ebx, dword [esi + 0x1f8]
cmp ebx, edi
jne 0x511cd4
push 0x98
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x43
je 0x50f928
mov ecx, eax
call fcn.0047f920
mov ebx, eax
jmp 0x50f92a
xor ebx, ebx
push 0xc8
push 0xc8
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1f8], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x1f8]
push 0
push 0
lea eax, [esi + 0x7f4]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
jmp 0x511cce
mov ebx, dword [esi + 0x210]
cmp ebx, edi
jne 0x511cd4
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x44
je 0x50f9ca
mov ecx, eax
call fcn.0048c130
mov ebx, eax
jmp 0x50f9cc
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x210], ebx
jmp 0x51137a
mov ebx, dword [esi + 0x20c]
cmp ebx, edi
jne 0x511cd4
push 0x7c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x45
je 0x50fa0f
mov ecx, eax
call fcn.0048b5f0
mov ebx, eax
jmp 0x50fa11
xor ebx, ebx
push 4
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x20c], ebx
push 4
jmp 0x51137e
mov ebx, dword [esi + 0x1e4]
cmp ebx, edi
jne 0x50fad5
push 0x80
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x46
je 0x50fa5b
mov ecx, eax
call fcn.00476700
mov ebx, eax
jmp 0x50fa5d
xor ebx, ebx
push 0x3c
push 0xfa
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1e4], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x1e4]
push 0
push 0
lea eax, [esi + 0x528]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x53c], 1
jmp 0x511cdd
mov ebx, dword [esi + 0x1c0]
cmp ebx, edi
jne 0x51196a
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x47
je 0x50fb1e
mov ecx, eax
call fcn.005120c0
mov ebx, eax
jmp 0x50fb20
xor ebx, ebx
push 0x18
push 0xc
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1c0], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edx, dword [ebx]
push 0x11
mov ecx, ebx
mov eax, dword [eax + 0x24]
sub eax, 0x1d
push eax
call dword [edx + 0x18]
jmp 0x511962
mov ebx, dword [esi + 0x25c]
cmp ebx, edi
jne 0x51196a
push 0xdc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x48
je 0x50fb86
mov ecx, eax
call fcn.00486530
mov ebx, eax
jmp 0x50fb88
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x25c], ebx
push 0x78
jmp 0x51192b
mov ebx, dword [esi + 0x258]
cmp ebx, edi
jne 0x51196a
push 0xdc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x49
je 0x50fbd0
mov ecx, eax
call fcn.00484de0
mov ebx, eax
jmp 0x50fbd2
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x258], ebx
push 0x78
jmp 0x51192b
mov ebx, dword [esi + 0x254]
cmp ebx, edi
jne 0x51196a
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x4a
je 0x50fc17
mov ecx, eax
call fcn.00481cb0
mov ebx, eax
jmp 0x50fc19
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x254], ebx
push 0x78
jmp 0x51192b
mov ebx, dword [esi + 0x24c]
cmp ebx, edi
jne 0x511cd4
push 0xac
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x4b
je 0x50fc61
mov ecx, eax
call fcn.004e1c00
mov ebx, eax
jmp 0x50fc63
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x24c], ebx
call fcn.004fd930
mov edx, dword [ebx]
push 0xc8
push 0x12c
mov ecx, ebx
call dword [edx + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov eax, dword [ebx]
push 0
push 0
lea ecx, [esi + 0x678]
push 0
push ecx
push 0x22
push 0
mov ecx, ebx
call dword [eax + 0x90]
jmp 0x511cd4
mov ebx, dword [esi + 0x250]
cmp ebx, edi
jne 0x511cd4
push 0xb0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x4c
je 0x50fceb
mov ecx, eax
call fcn.004e3300
mov ebx, eax
jmp 0x50fced
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x250], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0x12c
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x678]
jmp 0x511cc7
mov ebx, dword [esi + 0x2ec]
cmp ebx, edi
jne 0x511cd4
push 0xb8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x4d
je 0x50fd69
push edi
mov ecx, eax
call fcn.004dfb90
mov ebx, eax
jmp 0x50fd6b
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2ec], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0x12c
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x73c]
jmp 0x511cc7
mov ebx, dword [esi + 0x248]
cmp ebx, edi
jne 0x50fe33
push 0xb4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x4e
je 0x50fde2
mov ecx, eax
call fcn.004dd980
mov ebx, eax
jmp 0x50fde4
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x248], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0x12c
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x688]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
push 0x32
mov ecx, esi
call fcn.0050cbe0
jmp 0x511cdd
mov ebx, dword [esi + 0x2e8]
cmp ebx, edi
jne 0x511cd4
push 0xb0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x4f
je 0x50fe7f
push edi
mov ecx, eax
call fcn.004db540
mov ebx, eax
jmp 0x50fe81
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2e8], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x72c]
jmp 0x511cc7
mov ebx, dword [esi + 0x2e4]
cmp ebx, edi
jne 0x511cd4
push 0xbc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x50
je 0x50fefa
push edi
mov ecx, eax
call fcn.004dc430
mov ebx, eax
jmp 0x50fefc
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x2e4], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x71c]
jmp 0x511cc7
mov ebx, dword [esi + 0x240]
cmp ebx, edi
jne 0x511cd4
push 0xc0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x51
je 0x50ff74
mov ecx, eax
call fcn.004d87f0
mov ebx, eax
jmp 0x50ff76
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x240], ebx
jmp 0x50ffc8
mov ebx, dword [esi + 0x244]
cmp ebx, edi
jne 0x511cd4
push 0xbc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x52
je 0x50ffb9
mov ecx, eax
call fcn.004da070
mov ebx, eax
jmp 0x50ffbb
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x244], ebx
push 0x78
push 0x118
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x668]
jmp 0x511cc7
mov ebx, dword [esi + 0x238]
cmp ebx, edi
jne 0x51196a
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x53
je 0x510030
mov ecx, eax
call fcn.00512180
mov ebx, eax
jmp 0x510032
xor ebx, ebx
push 0x2b
push 0x2b
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x238], ebx
call fcn.004fd930
mov ecx, dword [0x7a0f18]
mov eax, dword [ebx]
mov edx, dword [ecx + 0x28]
mov ecx, ebx
sub edx, 0x2b
push edx
push 0
call dword [eax + 0x18]
jmp 0x511962
mov ebx, dword [esi + 0x234]
cmp ebx, edi
jne 0x511cd4
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x54
je 0x510096
mov ecx, eax
call fcn.00512120
mov ebx, eax
jmp 0x510098
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x234], ebx
push 0x2b
push 0x2b
mov ecx, ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov edx, dword [ebx]
mov ecx, dword [eax + 0x28]
mov eax, dword [eax + 0x24]
sub ecx, 0x2b
sub eax, 0x2b
push ecx
push eax
mov ecx, ebx
call dword [edx + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x23c]
cmp ebx, edi
jne 0x511cd4
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x55
je 0x510108
mov ecx, eax
call fcn.005121e0
mov ebx, eax
jmp 0x51010a
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x23c], ebx
jmp 0x5100a5
mov ebx, dword [esi + 0x230]
cmp ebx, edi
jne 0x511cd4
push 0x84
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x56
je 0x51014d
mov ecx, eax
call fcn.0047dcf0
mov ebx, eax
jmp 0x51014f
xor ebx, ebx
push 0x1a1
push 0x12c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x230], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0
jmp 0x5113a0
mov ebx, dword [esi + 0x22c]
cmp ebx, edi
jne 0x511cd4
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x57
je 0x5101b8
mov ecx, eax
call fcn.004812e0
mov ebx, eax
jmp 0x5101ba
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x22c], ebx
push 0x78
push 0x118
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
jmp 0x5113a0
mov ebx, dword [esi + 0x228]
cmp ebx, edi
jne 0x511cd4
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x58
je 0x510226
mov ecx, eax
call fcn.00480ee0
mov ebx, eax
jmp 0x510228
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x228], ebx
jmp 0x5101c7
mov ebx, dword [esi + 0x220]
cmp ebx, edi
jne 0x511cd4
push 0x9c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x59
je 0x51026b
mov ecx, eax
call fcn.0047c4d0
mov ebx, eax
jmp 0x51026d
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x220], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x78
push eax
push 0xb9
jmp 0x5113a0
mov ebx, dword [esi + 0x224]
cmp ebx, edi
jne 0x511cd4
push 0xdc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x5a
je 0x5102df
mov ecx, eax
call fcn.0047ccf0
mov ebx, eax
jmp 0x5102e1
xor ebx, ebx
push 0x177
push 0x15e
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x224], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x32
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xa
jmp 0x5113a0
cmp dword [0x81424c], 0xf
je case.0x50cc46.54
mov ebx, dword [esi + 0x21c]
cmp ebx, edi
jne 0x511cd4
push 0x98
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x5b
je 0x51035a
mov ecx, eax
call fcn.00476f70
mov ebx, eax
jmp 0x51035c
xor ebx, ebx
push 0x22
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x21c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x22
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x76c]
jmp 0x511cc7
mov ebx, dword [esi + 0x218]
cmp ebx, edi
jne 0x511cd4
push 0x128
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x5c
je 0x5103f4
mov ecx, eax
call fcn.0047c250
mov ebx, eax
jmp 0x5103f6
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x218], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x75c]
jmp 0x511cc7
mov ebx, dword [esi + 0x214]
cmp ebx, edi
jne 0x511cd4
push 0x124
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x5d
je 0x51048b
mov ecx, eax
call fcn.0047a470
mov ebx, eax
jmp 0x51048d
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x214], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x74c]
jmp 0x511cc7
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x5e
je 0x510511
mov ecx, eax
call fcn.00481810
mov ebx, eax
jmp 0x510513
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cdd
push 0x80
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x5f
je 0x510586
mov ecx, eax
call fcn.00465070
mov ebx, eax
jmp 0x510588
xor ebx, ebx
push 0xc8
push 0x190
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov edx, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [edx + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cdd
mov ebx, dword [esi + 0x334]
cmp ebx, edi
jne 0x511cd4
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x60
je 0x5105e9
mov ecx, eax
call fcn.004f96b0
mov ebx, eax
jmp 0x5105eb
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x334], ebx
jmp 0x5106cd
mov ebx, dword [esi + 0x1fc]
cmp ebx, edi
jne 0x511cd4
push 0x90
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x61
je 0x510631
mov ecx, eax
call fcn.004f8700
mov ebx, eax
jmp 0x510633
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x1fc], ebx
jmp 0x5106cd
mov ebx, dword [esi + 0x200]
cmp ebx, edi
jne 0x511cd4
push 0x84
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x62
je 0x510679
mov ecx, eax
call fcn.004f8f80
mov ebx, eax
jmp 0x51067b
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x200], ebx
jmp 0x5106cd
mov ebx, dword [esi + 0x338]
cmp ebx, edi
jne 0x511cd4
push 0x184
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x63
je 0x5106be
mov ecx, eax
call fcn.004f9dd0
mov ebx, eax
jmp 0x5106c0
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x338], ebx
push 0x96
push 0x118
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
jmp 0x5113a0
mov ebx, dword [esi + 0x33c]
cmp ebx, edi
jne 0x511cd4
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x64
je 0x510732
mov ecx, eax
call fcn.004fab00
mov ebx, eax
jmp 0x510734
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x33c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
jmp 0x5113a0
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x65
je 0x510c07
mov ecx, eax
call fcn.004671f0
mov ebx, eax
jmp 0x510c09
mov ebx, dword [esi + 0x36c]
cmp ebx, edi
jne 0x51196a
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x66
je 0x5107cd
mov ecx, eax
call fcn.004d64b0
mov ebx, eax
jmp 0x5107cf
xor ebx, ebx
push 0x12
push 0x3c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x36c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
jmp 0x51194c
mov ebx, dword [esi + 0x340]
cmp ebx, edi
jne 0x511cd4
push 0xbc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x67
je 0x510838
mov ecx, eax
call fcn.00512240
mov ebx, eax
jmp 0x51083a
xor ebx, ebx
push 0x104
push 0x177
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x340], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
call fcn.00512020
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, ebx
push eax
call dword [edx]
mov eax, dword [ebx]
push 0
push 0
lea ecx, [esi + 0x804]
push 0
push ecx
push 0x22
push 0
mov ecx, ebx
call dword [eax + 0x90]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x344]
cmp ebx, edi
jne 0x511cd4
push 0x98
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x68
je 0x5108e2
mov ecx, eax
call fcn.00455e20
mov ebx, eax
jmp 0x5108e4
xor ebx, ebx
push 0x14a
push 0xf6
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x344], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x190
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x814]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov eax, dword [0x83bfa4]
or edi, 0xffffffff
cmp eax, edi
je case.0x50cc46.54
mov ebx, dword [esi + 0x34c]
test ebx, ebx
jne 0x511cd4
push 0x70
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
test eax, eax
mov dword [ebp - 4], 0x69
je 0x510999
mov ecx, eax
call fcn.00465d40
mov ebx, eax
jmp 0x51099b
xor ebx, ebx
push 0xa0
push 0x118
mov ecx, ebx
mov dword [ebp - 4], edi
mov dword [esi + 0x34c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x190
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x824]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x350]
cmp ebx, edi
jne 0x511cd4
push 0x98
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x6a
je 0x510a3f
mov ecx, eax
call fcn.0048c290
mov ebx, eax
jmp 0x510a41
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x350], ebx
push 0xc8
push 0xc8
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
jmp 0x511392
mov ebx, dword [esi + 0x354]
cmp ebx, edi
jne 0x511cd4
push 0x80
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x6b
je 0x510aa5
mov ecx, eax
call fcn.0048ce20
mov ebx, eax
jmp 0x510aa7
xor ebx, ebx
push 0x100
push 0xc4
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x354], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x80
push eax
mov eax, dword [ecx + 0x24]
cdq
sub eax, edx
mov ecx, ebx
sar eax, 1
sub eax, 0x62
push eax
call dword [edi + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x358]
cmp ebx, edi
jne 0x511cd4
push 0x9c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x6c
je 0x510b32
mov ecx, eax
call fcn.0048c800
mov ebx, eax
jmp 0x510b34
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x358], ebx
jmp 0x510a4e
mov ebx, dword [esi + 0x35c]
cmp ebx, edi
jne 0x511cd4
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x6d
je 0x510b77
mov ecx, eax
call fcn.0048d120
mov ebx, eax
jmp 0x510b79
xor ebx, ebx
push 0x62
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x35c], ebx
push 0x174
jmp 0x510a58
mov eax, dword [esi + 0x360]
cmp eax, edi
je 0x510baa
push eax
mov ecx, esi
call fcn.00508ee0
mov dword [esi + 0x360], edi
push 0xac
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x6e
je 0x510bd0
mov ecx, eax
call fcn.0048db30
mov ebx, eax
jmp 0x510bd2
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x360], ebx
jmp 0x510a4e
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x6f
je 0x510c07
mov ecx, eax
call fcn.0048e1b0
mov ebx, eax
jmp 0x510c09
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cdd
mov ebx, dword [esi + 0x348]
cmp ebx, edi
jne 0x51196a
push 0x68
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x70
je 0x510c8a
mov ecx, eax
call fcn.0048e6b0
mov ebx, eax
jmp 0x510c8c
xor ebx, ebx
push 0x190
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x348], ebx
push 0x1f4
jmp 0x50f52a
mov ebx, dword [esi + 0x370]
cmp ebx, edi
jne 0x51196a
push 0x110
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x71
je 0x510cdc
mov ecx, eax
call fcn.0048f1b0
mov ebx, eax
jmp 0x510cde
xor ebx, ebx
push 0x1a4
push 0x258
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x370], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0
jmp 0x511952
mov ebx, dword [esi + 0x374]
cmp ebx, edi
jne 0x51196a
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x72
je 0x510d47
mov ecx, eax
call fcn.00490930
mov ebx, eax
jmp 0x510d49
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x374], ebx
jmp 0x50f1dc
mov ebx, dword [esi + 0x378]
cmp ebx, edi
jne 0x51196a
push 0x7c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x73
je 0x510d8c
mov ecx, eax
call fcn.00490a80
mov ebx, eax
jmp 0x510d8e
xor ebx, ebx
push 0xc8
push 0xfa
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x378], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0x190
jmp 0x511952
mov eax, dword [0x83e208]
or edi, 0xffffffff
cmp eax, edi
je case.0x50cc46.54
mov ebx, dword [esi + 0x37c]
test ebx, ebx
jne 0x511cd4
push 0x7c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
test eax, eax
mov dword [ebp - 4], 0x74
je 0x510e0d
mov ecx, eax
call fcn.00467c90
mov ebx, eax
jmp 0x510e0f
xor ebx, ebx
push 0xb4
push 0x118
mov ecx, ebx
mov dword [ebp - 4], edi
mov dword [esi + 0x37c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x190
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
call fcn.00512020
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, ebx
push eax
call dword [edx]
mov eax, dword [ebx]
push 0
push 0
lea ecx, [esi + 0x834]
push 0
push ecx
push 0x22
push 0
mov ecx, ebx
call dword [eax + 0x90]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x380]
mov edi, 1
test ebx, ebx
jne 0x510f32
push 0xfc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
test eax, eax
mov dword [ebp - 4], 0x75
je 0x510eb8
mov ecx, eax
call fcn.004eee70
mov ebx, eax
jmp 0x510eba
xor ebx, ebx
push 0x78
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x380], ebx
push 0x118
mov ecx, ebx
mov dword [ebx + 0xf8], edi
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x380]
push 0
push 0
lea eax, [esi + 0x844]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
mov edi, 1
mov ecx, dword [esi + 0x380]
push edi
mov dword [ecx + 0xf8], edi
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x854], edi
jmp 0x511cdd
mov eax, dword [0x83e2b8]
or edi, 0xffffffff
cmp eax, edi
je case.0x50cc46.54
mov ebx, dword [esi + 0x384]
test ebx, ebx
jne 0x511cd4
push 0x74
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
test eax, eax
mov dword [ebp - 4], 0x76
je 0x510f92
mov ecx, eax
call fcn.00469090
mov ebx, eax
jmp 0x510f94
xor ebx, ebx
push 0xb4
push 0x118
mov ecx, ebx
mov dword [ebp - 4], edi
mov dword [esi + 0x384], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x190
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
sub eax, 0x3c
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x858]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x388]
cmp ebx, edi
jne 0x5110b1
push 0xfc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x77
je 0x511038
mov ecx, eax
call fcn.004eee70
mov ebx, eax
jmp 0x51103a
xor ebx, ebx
push 0x78
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x388], ebx
push 0x118
mov ecx, ebx
mov dword [ebx + 0xf8], 2
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x388]
push 0
push 0
lea eax, [esi + 0x868]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
mov ecx, dword [esi + 0x388]
push 1
mov dword [ecx + 0xf8], 2
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [esi + 0x878], 1
jmp 0x511cdd
mov ebx, dword [esi + 0x38c]
cmp ebx, edi
jne 0x511cd4
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x78
je 0x51110a
mov ecx, eax
call fcn.00491a20
mov ebx, eax
jmp 0x51110c
xor ebx, ebx
push 0x30
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x38c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xb4
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512040
add esp, 4
push eax
push 0xb9
jmp 0x5113a0
cmp dword [esi + 0x2d8], edi
jne 0x5111c5
mov ebx, dword [esi + 0x390]
cmp ebx, edi
jne 0x511cd4
push 0x138
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x79
je 0x511183
mov ecx, eax
call fcn.00491eb0
mov ebx, eax
jmp 0x511185
xor ebx, ebx
push 0x190
push 0x12c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x390], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x64
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0x64
jmp 0x5113a0
cmp dword [esi + 0x2d8], edi
je 0x5111fb
push edi
push edi
push edi
push edi
push 3
mov ecx, 0x7dabc0
call fcn.00512f20
push edi
push edi
push 0xff
push 0x495
call fcn.00581bb0
add esp, 4
mov ecx, 0x7dabc0
push eax
push 1
call fcn.00512f20
jmp case.0x50cc46.54
mov ebx, dword [esi + 0x394]
cmp ebx, edi
jne 0x511cd4
push 0xe0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x7a
je 0x51122f
mov ecx, eax
call fcn.00494470
mov ebx, eax
jmp 0x511231
xor ebx, ebx
push 0x190
push 0x12c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x394], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x64
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0x190
jmp 0x5113a0
mov ebx, dword [esi + 0x398]
cmp ebx, edi
jne 0x511cd4
push 0x180
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x7b
je 0x5112a0
mov ecx, eax
call fcn.00495890
mov ebx, eax
jmp 0x5112a2
xor ebx, ebx
push 0x12c
push 0x226
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x398], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x64
add eax, 0x18
mov dword [ebp - 0x10], eax
jmp 0x511392
mov ebx, dword [esi + 0x39c]
cmp ebx, edi
jne 0x511cd4
push 0x90
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x7c
je 0x511303
mov ecx, eax
call fcn.0049a050
mov ebx, eax
jmp 0x511305
xor ebx, ebx
push 0xa1
push 0xec
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x39c], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x82
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0x12c
jmp 0x5113a0
cmp dword [esi + 0x3a0], edi
jne 0x5113bd
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x7d
je 0x51136b
mov ecx, eax
call fcn.0049ab20
mov ebx, eax
jmp 0x51136d
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3a0], ebx
push 0x10
push 0x10
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xc8
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
mov ebx, dword [esi + 0x210]
jmp 0x511cd4
mov eax, dword [0x83bdac]
mov edi, 0x21c
cmp eax, 0xc
mov dword [ebp - 0x24], edi
jle 0x5113e2
mov edi, 0x30f
mov dword [ebp - 0x24], edi
push 0x11d0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
test eax, eax
mov dword [ebp - 4], 0x7e
je 0x511408
mov ecx, eax
call fcn.0049b5d0
mov ebx, eax
jmp 0x51140a
xor ebx, ebx
push 0x190
push edi
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3a8], ebx
call fcn.004fd930
mov eax, dword [0x7a0f18]
mov ecx, dword [0x7a0f18]
mov edi, dword [ebx]
mov eax, dword [eax + 0x28]
sub eax, 0x190
cdq
sub eax, edx
mov edx, dword [ebp - 0x24]
sar eax, 1
push eax
mov eax, dword [ecx + 0x24]
sub eax, edx
mov ecx, ebx
cdq
sub eax, edx
sar eax, 1
push eax
call dword [edi + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cdd
mov ebx, dword [esi + 0x3ac]
cmp ebx, edi
jne 0x51196a
push 0xe0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x7f
je 0x511493
mov ecx, eax
call fcn.004a4460
mov ebx, eax
jmp 0x511495
xor ebx, ebx
push 0x69
push 0xb8
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3ac], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xb4
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512040
add esp, 4
push eax
push 0x104
jmp 0x511952
mov ebx, dword [esi + 0x3b0]
cmp ebx, edi
jne 0x51196a
push 0x60
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x80
je 0x511501
mov ecx, eax
call fcn.004a4c80
mov ebx, eax
jmp 0x511503
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3b0], ebx
jmp 0x511926
mov ebx, dword [esi + 0x3b4]
cmp ebx, edi
jne 0x511599
push 0xd0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x81
je 0x511545
mov ecx, eax
call fcn.004aa140
mov ebx, eax
jmp 0x511547
xor ebx, ebx
push 0x5f
push 0x12c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3b4], ebx
call fcn.004fd930
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x3b4]
push 0x82
call fcn.00512010
mov ecx, dword [esi + 0x3b4]
push 0
push 0
lea eax, [esi + 0x87c]
mov edx, dword [ecx]
push 0
push eax
push 0x22
push 0
call dword [edx + 0x90]
mov edx, dword [ebx]
push 0
jmp 0x511cd8
mov ebx, dword [esi + 0x3b8]
cmp ebx, edi
jne 0x511626
push 0xd0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x82
je 0x5115d2
mov ecx, eax
call fcn.004aa140
mov ebx, eax
jmp 0x5115d4
xor ebx, ebx
push 0x5f
push 0x12c
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3b8], ebx
call fcn.004fd930
push ebx
mov ecx, esi
call fcn.005067d0
mov ecx, dword [esi + 0x3b8]
push 0x83
call fcn.00512010
mov ecx, dword [esi + 0x3b8]
push 0
push 0
lea edx, [esi + 0x88c]
mov eax, dword [ecx]
push 0
push edx
push 0x22
push 0
call dword [eax + 0x90]
mov eax, dword [ebx]
push 0
mov ecx, ebx
call dword [eax + pe_nt_image_headers32]
jmp 0x511cdd
mov ebx, dword [esi + 0x3bc]
cmp ebx, edi
jne 0x51196a
push 0xbc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x83
je 0x511668
mov ecx, eax
call fcn.004abec0
mov ebx, eax
jmp 0x51166a
xor ebx, ebx
push 0xc8
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3bc], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0x190
jmp 0x511952
mov ebx, dword [esi + 0x3c0]
cmp ebx, edi
jne 0x511cd4
push 0x6c
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x84
je 0x5116d9
mov ecx, eax
call fcn.004abce0
mov ebx, eax
jmp 0x5116db
xor ebx, ebx
push 5
push 5
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3c0], ebx
call fcn.004fd930
push ebx
mov ecx, esi
call fcn.005067d0
jmp 0x511cd4
push 0x7c1a4c
push 0x83e350
call fcn.0051a3b0
add esp, 8
test al, al
je 0x51172b
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [esi + 0x3c8]
cmp ebx, edi
jne 0x5117ac
push 0x64
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x85
je 0x511758
mov ecx, eax
call fcn.004aeda0
mov ebx, eax
jmp 0x51175a
xor ebx, ebx
push 0x96
push 0xc8
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3c8], ebx
call fcn.004fd930
mov eax, dword [0x83e340]
test eax, eax
jl 0x511796
mov ecx, dword [0x83e344]
test ecx, ecx
jl 0x511796
mov edx, dword [ebx]
push ecx
push eax
mov ecx, ebx
call dword [edx + 0x18]
jmp 0x5117a4
mov eax, dword [ebx]
push 0x136
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov dword [0x83e33c], 1
jmp 0x511cdd
mov ebx, dword [esi + 0x3cc]
cmp ebx, edi
jne 0x511cd4
push 0xc0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x86
je 0x5117f8
mov ecx, eax
call fcn.0046ec10
mov ebx, eax
jmp 0x5117fa
xor ebx, ebx
push 0xa7
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3cc], ebx
push 0x118
mov ecx, ebx
mov dword [ebx + 0x60], 1
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
push ebx
mov ecx, 0x7da988
call fcn.00437fc0
jmp 0x511cd4
mov ebx, dword [esi + 0x3d0]
cmp ebx, edi
jne 0x5118c8
push 0x94
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x87
je 0x511892
mov ecx, eax
call fcn.004af960
mov ebx, eax
jmp 0x511894
xor ebx, ebx
mov dword [esi + 0x3d0], ebx
mov eax, dword [0x7a0f18]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [eax + 0x28]
mov edx, dword [eax + 0x24]
push ecx
push edx
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
mov eax, dword [esi + 0x3d0]
mov ecx, 0x7dabc0
push eax
call fcn.00506d90
jmp 0x511cdd
mov ebx, dword [esi + 0x3d8]
cmp ebx, edi
jne 0x51196a
push 0x88
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x88
je 0x511917
mov ecx, eax
call fcn.004b90f0
mov ebx, eax
jmp 0x511919
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3d8], ebx
push 0x8f
push 0x118
mov ecx, ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x12c
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, ebx
push eax
call dword [edx]
push ebx
mov ecx, esi
call fcn.005067d0
mov eax, dword [ebx]
push 1
mov ecx, ebx
call dword [eax + pe_nt_image_headers32]
jmp 0x511cdd
push eax
mov ecx, esi
call fcn.005142e0
mov ebx, eax
cmp ebx, edi
je case.0x50cc46.54
jmp 0x511cd4
mov ebx, dword [esi + 0x3dc]
cmp ebx, edi
jne 0x511a33
push 0xf4
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x89
je 0x5119c5
push 1
mov ecx, eax
call fcn.004f1cd0
mov ebx, eax
jmp 0x5119c7
xor ebx, ebx
push 0xf9
push 0x14a
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3dc], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0xb9
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
lea eax, [esi + 0x8ac]
push 0
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
push 0xaf
mov ecx, esi
call fcn.0050cbe0
jmp 0x511cdd
mov ebx, dword [esi + 0x3e0]
cmp ebx, edi
jne 0x511cd4
push 0xa8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x8a
je 0x511a83
push 1
mov ecx, eax
call fcn.004e55d0
mov ebx, eax
jmp 0x511a85
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3e0], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0x78
add eax, 0x18
mov dword [ebp - 0x10], eax
call fcn.00512090
add esp, 4
push eax
push 0
call fcn.00512020
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x10]
call dword [eax]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x8bc]
jmp 0x511cc7
mov ebx, dword [esi + 0x3e4]
cmp ebx, edi
jne 0x511cd4
push 0xb0
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x8b
je 0x511b16
push 1
mov ecx, eax
call fcn.004db540
mov ebx, eax
jmp 0x511b18
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3e4], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x8cc]
jmp 0x511cc7
mov ebx, dword [esi + 0x3e8]
cmp ebx, edi
jne 0x511cd4
push 0xbc
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x8c
je 0x511b92
push 1
mov ecx, eax
call fcn.004dc430
mov ebx, eax
jmp 0x511b94
xor ebx, ebx
push 0x78
push 0x15e
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3e8], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x8dc]
jmp 0x511cc7
mov ebx, dword [esi + 0x3ec]
cmp ebx, edi
jne 0x511cd4
push 0xb8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x8d
je 0x511c0e
push 1
mov ecx, eax
call fcn.004dfb90
mov ebx, eax
jmp 0x511c10
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3ec], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0xc8
push 0x12c
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x8ec]
jmp 0x511cc7
mov ebx, dword [esi + 0x3f0]
cmp ebx, edi
jne 0x511cd4
push 0xa8
call fcn.00711d5b
add esp, 4
mov dword [ebp - 0x28], eax
cmp eax, edi
mov dword [ebp - 4], 0x8e
je 0x511c86
push 2
mov ecx, eax
call fcn.004e55d0
mov ebx, eax
jmp 0x511c88
xor ebx, ebx
push 0x78
push 0x118
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x3f0], ebx
call fcn.004fd930
mov eax, dword [ebx]
push 0
push 0x12c
mov ecx, ebx
call dword [eax + 0x18]
push ebx
mov ecx, esi
call fcn.005067d0
mov edx, dword [ebx]
push 0
push 0
push 0
lea eax, [esi + 0x8fc]
push eax
push 0x22
push 0
mov ecx, ebx
call dword [edx + 0x90]
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + pe_nt_image_headers32]
test ebx, ebx
je case.0x50cc46.54
mov eax, dword [ebp + 8]
mov ecx, ebx
push eax
call fcn.00512010
lea ecx, [ebp + 8]
push ecx
lea ecx, [esi + 4]
call fcn.00517270
mov dword [eax], ebx
mov ecx, dword [ebp - 0xc]
pop edi
mov eax, ebx
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4