Function at 0x42ebf0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x688
xor eax, eax
mov dword [ebp - 0x10], esi
mov esi, dword [ebp + 8]
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], ebx
mov edi, dword [esi + 4]
mov ebx, dword [edi + 0x5c]
mov dword [ebx + 0x14], eax
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], eax
mov dword [ebp - 0x3fc], edi
test byte [edi + 0x178], 0x40
je 0x42ec32
mov edx, 0x4ee300
jmp 0x42ec37
mov edx, 0x4ee1e0
movzx eax, byte [edi + 0x171]
test eax, eax
je case.default.0x42ec48
dec eax
cmp eax, 4
ja case.default.0x42ec48
jmp dword [eax*4 + 0x4eb8cc]
movzx eax, byte [ebp - 0x354]
and eax, 0xffffffc3
or eax, 0x40
mov byte [ebp - 0x354], al
jmp case.default.0x42ec48
movzx eax, byte [ebp - 0x354]
and eax, 0xffffffa3
or eax, 0x20
mov byte [ebp - 0x354], al
jmp case.default.0x42ec48
movzx eax, byte [ebp - 0x354]
and eax, 0xffffff93
or eax, 0x10
mov byte [ebp - 0x354], al
jmp case.default.0x42ec48
movzx eax, byte [ebp - 0x354]
and eax, 0xffffff8b
or eax, 8
mov byte [ebp - 0x354], al
jmp case.default.0x42ec48
movzx eax, byte [ebp - 0x354]
or eax, 4
and eax, 0xffffff87
mov byte [ebp - 0x354], al
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x408], edx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], esi
mov edi, dword [ebp - 0x18]
lea edx, [ebp - 0x330]
push edx
lea ecx, [ebp - 0x1ac]
push ecx
lea ebx, [ebp + 0x10]
push ebx
lea esi, [ebp + 0xc]
push esi
call fcn.00440b60
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x430332
mov ecx, dword [ebp - 0x1a4]
cmp ecx, 2
je 0x4303a8
cmp ecx, 1
je 0x43031f
mov edx, dword [ebp - 0x330]
cmp edx, 7
jl 0x42ef1d
cmp edx, 8
jg 0x42ef1d
mov ebx, dword [ebp - 0x1a0]
test ebx, ebx
je 0x42ed42
mov eax, dword [ebp - 0x1a8]
cdq
idiv ebx
mov ebx, eax
jmp 0x42ed58
mov edx, dword [ebp - 0x1c]
test byte [edx + 0x178], 2
je 0x42ef6e
mov ebx, dword [ebp - 0x1a8]
test ebx, ebx
je 0x42ef6e
lea edx, [ecx - 0x1c]
cmp edx, 0x10
jbe 0x42ed76
cmp ecx, 0x34
je 0x42ed76
mov dword [ebp - 0x14], 0
jmp 0x42ed7e
mov edi, 1
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x32c]
test eax, eax
jle 0x42eeef
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
test edx, edx
jbe 0x4302e9
mov dword [ebp - 0x344], ebx
xor ecx, ecx
mov dword [ebp - 0x33c], eax
mov dword [ebp - 0x18], edi
mov esi, esi
lea ebx, [ecx + ecx*2]
mov edi, dword [ebp + ebx*8 - 0x31c]
mov dword [ebp + ecx*8 - 0xa4], edi
mov eax, dword [ebp + ebx*8 - 0x320]
mov edi, dword [ebp + ebx*8 - 0x314]
mov ebx, dword [ebp + ebx*8 - 0x310]
mov dword [ebp + ecx*8 - 0x120], eax
mov dword [ebp + ecx*8 - 0x19c], eax
mov dword [ebp + ecx*8 - 0x11c], edi
mov dword [ebp + ecx*8 - 0xa0], ebx
mov dword [ebp + ecx*8 - 0x198], edi
inc ecx
cmp ecx, edx
jb 0x42edb0
mov ebx, dword [ebp - 0x344]
lea ecx, [ecx + ecx + 1]
mov eax, dword [ebp - 0x33c]
mov edi, dword [ebp - 0x18]
lea edx, [ecx - 1]
cmp eax, edx
jbe 0x42ee4b
mov dword [ebp - 0x28], esi
lea esi, [ecx*8]
lea esi, [esi + ecx*4]
mov edx, dword [ebp + esi - 0x32c]
mov esi, dword [ebp + esi - 0x328]
mov dword [ebp + ecx*4 - 0xa8], esi
mov dword [ebp + ecx*4 - 0x124], edx
mov dword [ebp + ecx*4 - 0x1a0], edx
mov esi, dword [ebp - 0x28]
mov ecx, eax
xor edx, edx
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
mov dword [ebp - 0x338], ecx
cmp dword [ebp - 0x338], 0
jbe 0x4302da
mov dword [ebp - 0x18], edi
xor ecx, ecx
mov dword [ebp - 0x33c], eax
mov edi, dword [ebp - 0x338]
mov eax, dword [ebp + ecx*8 - 0x19c]
sub eax, dword [ebp + ecx*8 - 0x120]
imul eax, dword [ebp + ecx*8 - 0xa4]
add edx, eax
mov eax, dword [ebp + ecx*8 - 0x198]
sub eax, dword [ebp + ecx*8 - 0x11c]
imul eax, dword [ebp + ecx*8 - 0xa0]
inc ecx
add edx, eax
cmp ecx, edi
jb 0x42ee7a
mov eax, dword [ebp - 0x33c]
lea ecx, [ecx + ecx + 1]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x334], ecx
mov ecx, dword [ebp - 0x334]
lea ecx, [ecx - 1]
cmp eax, ecx
jbe 0x42eef1
mov ecx, dword [ebp - 0x334]
mov eax, dword [ebp + ecx*4 - 0x1a0]
sub eax, dword [ebp + ecx*4 - 0x124]
imul eax, dword [ebp + ecx*4 - 0xa8]
add edx, eax
jmp 0x42eef1
xor edx, edx
add edx, dword [ebp - 0x328]
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1ac], edx
lea edx, [ebp - 0x330]
push edx
push ecx
push 0
call fcn.00439050
add esp, 0xc
mov dword [ebp - 0x28], esi
jmp 0x42f07f
cmp edx, 6
je 0x42ef27
cmp edx, 5
jne 0x42ef7a
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x1a0]
mov ebx, dword [ebp - 0x1a8]
movzx ecx, byte [ecx + 0x178]
and ecx, 2
shr ecx, 1
mov dword [ebp - 0x1b0], edx
test edx, edx
je 0x42ef5f
mov eax, ebx
cdq
mov ebx, dword [ebp - 0x1b0]
idiv ebx
mov ebx, eax
test ecx, ecx
jne 0x42ef6a
jmp 0x42ef15
test ecx, ecx
jne 0x42ef68
mov ebx, 0
je 0x42ef15
test ebx, ebx
jne 0x42ef15
mov dword [ebp - 4], 1
jmp 0x42ecd3
lea ebx, [ecx - 0x1c]
cmp ebx, 0x10
ja 0x42f09d
mov ebx, 2
cmp dword [ebp - 4], 0
je 0x42f0b5
mov dword [ebp - 0x28], esi
cmp edx, 7
je 0x42efa6
cmp edx, 8
jne 0x42f072
test edi, edi
je 0x42efc0
mov esi, dword [ebp - 0x1a0]
xor eax, eax
add dword [ebp - 0x1ac], esi
dec ebx
xor edi, edi
jmp 0x42f07f
cmp dword [ebp - 0x14], 0
mov esi, dword [ebp - 0x32c]
je 0x42efd1
mov edi, 1
test esi, esi
jle 0x42f04a
mov eax, esi
xor edx, edx
shr eax, 0x1f
add eax, esi
sar eax, 1
test eax, eax
jbe 0x4302f3
mov dword [ebp - 0x18], edi
xor ecx, ecx
mov edi, dword [ebp + ecx*8 - 0x19c]
sub edi, dword [ebp + ecx*8 - 0x120]
imul edi, dword [ebp + ecx*8 - 0xa4]
add edx, edi
mov edi, dword [ebp + ecx*8 - 0x198]
sub edi, dword [ebp + ecx*8 - 0x11c]
imul edi, dword [ebp + ecx*8 - 0xa0]
inc ecx
add edx, edi
cmp ecx, eax
jb 0x42efed
mov edi, dword [ebp - 0x18]
lea ecx, [ecx + ecx + 1]
lea eax, [ecx - 1]
cmp esi, eax
jbe 0x42f04c
mov esi, dword [ebp + ecx*4 - 0x1a0]
sub esi, dword [ebp + ecx*4 - 0x124]
imul esi, dword [ebp + ecx*4 - 0xa8]
add edx, esi
jmp 0x42f04c
xor edx, edx
add edx, dword [ebp - 0x328]
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1ac], edx
lea edx, [ebp - 0x330]
push edx
push ecx
push 0
call fcn.00439050
add esp, 0xc
jmp 0x42f07e
mov edx, dword [ebp - 0x1a0]
add dword [ebp - 0x1ac], edx
dec ebx
cmp dword [ebp - 4], 0
je 0x4302fd
cmp ebx, 1
jle 0x42ecd3
mov edx, dword [ebp - 0x330]
jmp 0x42ef98
cmp ecx, 0x34
je 0x430308
cmp dword [ebp - 4], 0
jne 0x42ecd3
mov ebx, 1
mov dword [ebp - 0x28], esi
cmp ecx, 0x3f
je 0x42fc2e
mov edx, dword [ebp - 0x24]
movzx ecx, byte [edx + 0x29]
test cl, 2
jne 0x42f089
mov edx, dword [edx + 0x10]
test edx, edx
jg 0x42f176
mov edx, dword [ebp - 0x24]
movzx edx, byte [edx + 0x28]
test dl, 0x10
jne 0x42f109
mov edx, dword [ebp - 0x24]
test byte [edx + 0x2a], 0x10
jne 0x42f0fa
mov esi, edx
xor edx, edx
mov dword [esi + 0x28], 0
jmp 0x42f109
mov dword [edx + 0x28], 0
mov byte [edx + 0x2a], 0x10
movzx edx, byte [edx + 0x28]
test dl, 1
jne 0x42f1b6
mov esi, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov dword [esi + 0x20], ecx
mov dword [esi + 0x24], ecx
mov edx, dword [ebp - 0x1a4]
call fcn.00430a50
mov edx, esi
cmp dword [edx + 0x14], 0
jne 0x42fc24
mov edx, dword [edx + 0x10]
test edx, edx
jle 0x42f16e
mov ecx, esi
test byte [ecx + 0x28], 0x10
je 0x42f166
mov esi, dword [ebp - 0x1a4]
lea ecx, [esi - 0x1c]
cmp ecx, 0x10
jbe 0x42f1b6
cmp esi, 0x34
je 0x42f1b6
mov ecx, dword [ebp - 0x24]
dec edx
mov dword [ecx + 0x10], edx
movzx ecx, byte [ecx + 0x29]
jmp 0x42f1bd
mov edx, ecx
movzx ecx, byte [edx + 0x29]
jmp 0x42f1bd
mov edx, esi
movzx ecx, byte [edx + 0x29]
jmp 0x42f1bd
mov esi, dword [ebp - 0x24]
movzx esi, byte [esi + 0x28]
test esi, 0x10
jne 0x42f18e
mov esi, dword [ebp - 0x24]
dec edx
mov dword [esi + 0x10], edx
jmp 0x42f1bd
test esi, 1
jne 0x42f1bd
mov edx, dword [ebp - 0x24]
test byte [edx + 0x2a], 8
jne 0x42f1bd
mov ecx, edx
mov eax, dword [ebp - 0x1c]
mov dword [ecx + 0x20], 0
mov edx, dword [ebp - 0x1a4]
call fcn.00430a50
mov edx, dword [ebp - 0x24]
movzx ecx, byte [edx + 0x29]
test cl, 2
jne 0x42f089
mov edx, dword [ebp - 0x24]
cmp dword [edx + 0x10], 0
jle 0x42f22c
movzx edx, byte [edx + 0x2a]
test dl, 0x20
je 0x42f22c
mov ecx, dword [ebp - 0x24]
movzx esi, byte [ecx + 0x28]
and esi, 0x10
shr esi, 4
test esi, esi
je 0x42f214
test bl, 1
je 0x42f204
mov eax, ecx
and edx, 0xffffffdf
mov ecx, dword [eax + 0x24]
mov esi, dword [eax + 0x20]
mov dword [eax + 0xc], ecx
mov dword [eax + 0x1c], esi
mov byte [eax + 0x2a], dl
jmp 0x42f22c
mov esi, ecx
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 0x20]
mov dword [esi + 8], edx
mov dword [esi + 0x18], ecx
jmp 0x42f22c
mov eax, ecx
mov ecx, dword [eax + 0x24]
mov esi, dword [eax + 0x20]
mov dword [eax + 8], ecx
mov dword [eax + 0x18], esi
jne 0x42f22c
mov ecx, eax
and edx, 0xffffffdf
mov byte [ecx + 0x2a], dl
mov esi, dword [ebp - 0x24]
xor eax, eax
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], eax
mov dword [ebp - 0x344], ebx
mov ebx, dword [esi + 0x20]
mov dword [ebp - 0x36c], ebx
mov edx, dword [ebp - 0x1a4]
mov ebx, dword [ebp - 0x408]
mov byte [ebp - 0x360], al
movzx ecx, byte [ebx + edx*4 + 3]
mov byte [ebp - 0x35c], cl
movsx eax, byte [ebx + edx*4 + 1]
movsx ecx, byte [ebx + edx*4 + 2]
mov word [ebp - 0x364], ax
mov word [ebp - 0x362], cx
mov dword [ebp - 0x404], eax
mov ebx, dword [ebp - 0x344]
test byte [esi + 0x2b], 1
jne 0x42f2a2
xor ecx, ecx
mov word [ebp - 0x364], cx
mov dword [ebp - 0x404], ecx
add edx, 0xfffffffb
cmp edx, 0x33
ja case.0x42f2ae.18
jmp dword [edx*4 + 0x4eb8e0]
mov edx, esi
movzx edx, byte [edx + 0x28]
test dl, 0x20
jne 0x42fa0a
test dl, 1
jne 0x42f2f1
cmp dword [ebp - 0x28], 0
je 0x42f2df
mov eax, dword [ebp - 0x28]
mov ebx, esi
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, esi
mov dword [edx + 0x14], 0x3b
and byte [edx + 0x2a], 0xef
jmp 0x42f089
cmp dword [ebp - 0x28], 0
je 0x42f307
mov eax, dword [ebp - 0x28]
mov ebx, esi
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, esi
and byte [edx + 0x2a], 0xef
jmp 0x42f089
mov edx, esi
movzx edx, byte [edx + 0x28]
test dl, 1
je 0x42f34f
cmp ebx, 2
je 0x42fa47
mov ecx, esi
and edx, 0xffffffef
cmp dword [ebp - 0x28], 0
mov byte [ecx + 0x28], dl
je 0x42f344
mov eax, dword [ebp - 0x28]
mov ebx, ecx
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, ecx
and byte [edx + 0x2a], 0xef
jmp 0x42f089
mov ecx, esi
cmp dword [ecx + 0x10], 0
jle 0x42f387
test bl, 1
jne 0x42f371
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0x18]
mov dword [esi + 0x24], edx
mov dword [ebp - 0x36c], ecx
movzx edx, byte [esi + 0x28]
jmp 0x42f387
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x24], edx
mov dword [ebp - 0x36c], ecx
dec dword [esi + 0x10]
movzx edx, byte [esi + 0x28]
test dl, 0x10
jne 0x42f3b5
test dl, 8
jne 0x42f3b5
movsx ecx, word [ebp - 0x364]
lea esi, [ebp - 0x3fc]
mov dword [esp + 0xc], esi
lea edx, [ebp - 0x1ac]
mov eax, dword [ebp - 0x24]
call fcn.004306d0
mov dword [ebp - 0x28], eax
jmp 0x42f3e6
test dl, 2
jne 0x42f391
mov ecx, esi
lea edx, [ebp - 0x1ac]
or byte [ebp - 0x358], 0x40
lea esi, [ebp - 0x3fc]
and byte [ebp - 0x357], 0x7f
push edx
push dword [ecx + 0x24]
push esi
call fcn.00442900
mov dword [ebp - 0x28], eax
add esp, 0xc
mov edx, dword [ebp - 0x24]
movzx ecx, byte [edx + 0x2a]
mov esi, ecx
and esi, 1
test byte [edx + 0x29], 0x10
je 0x42f407
test esi, esi
jne 0x42f40b
or ecx, 4
mov esi, ecx
and esi, 1
mov byte [edx + 0x2a], cl
test esi, esi
je 0x42f411
or ecx, 8
mov byte [edx + 0x2a], cl
test cl, 4
je 0x42f41b
test cl, 8
jne 0x42f482
movzx edx, byte [edx + 0x28]
test dl, 0x10
je 0x42f43c
cmp dword [ebp - 0x28], 0
je 0x42f7ab
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov ecx, dword [ebp - 0x24]
or edx, 0x11
mov byte [ecx + 0x28], dl
mov edx, dword [ebp - 0x1a0]
push edx
mov esi, dword [ebp - 0x1ac]
push 0
add esi, edx
push esi
call fcn.004cda30
add esp, 0xc
cmp dword [ebp - 0x28], 0
je 0x42f476
mov eax, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, dword [ebp - 0x24]
and byte [edx + 0x2a], 0xef
jmp 0x42f089
cmp dword [ebp - 0x28], 0
je 0x42f7ab
mov ebx, edx
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, esi
test byte [edx + 0x28], 8
jne 0x42f4d9
lea esi, [ebp - 0x3fc]
mov dword [esp + 0xc], esi
mov eax, edx
lea edx, [ebp - 0x1ac]
mov ecx, dword [ebp - 0x404]
call fcn.004306d0
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov ecx, edx
lea edx, [ebp - 0x1ac]
or byte [ebp - 0x358], 0x40
lea esi, [ebp - 0x3fc]
and byte [ebp - 0x357], 0x7f
push edx
push dword [ecx + 0x24]
push esi
call fcn.00442900
mov dword [ebp - 0x28], eax
add esp, 0xc
mov edx, dword [ebp - 0x24]
test byte [edx + 0x28], 0x10
jne 0x42f52a
cmp dword [ebp - 0x28], 0
je 0x42f521
mov ebx, edx
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
movzx ecx, byte [edx + 0x2a]
jmp 0x42f7ab
mov eax, dword [ebp - 0x1c]
movzx ecx, byte [eax + 0x173]
mov edx, dword [eax + 0x5c]
mov dword [ebp - 0x5a8], ecx
mov dword [ebp - 0x5ac], edx
call fcn.004303c0
test eax, eax
jne 0x42f6c7
mov edx, 0x3b
cmp dword [ebp - 0x5a8], 2
mov esi, dword [ebp - 0x1c]
je 0x42f566
mov edx, 0x2c
mov ecx, dword [esi + 0x3c]
cmp dl, byte [ecx]
jne 0x42f6a8
mov eax, esi
inc ecx
mov edx, dword [ebp - 0x5ac]
mov dword [eax + 0x3c], ecx
call fcn.004303c0
test eax, eax
jne 0x42f697
mov edx, esi
mov edx, dword [edx + 0x3c]
movsx eax, byte [edx]
cmp eax, 0x2d
je 0x42f59c
cmp eax, 0x2b
jne 0x42f5a5
mov ecx, esi
inc edx
mov dword [ecx + 0x3c], edx
movsx eax, byte [edx]
mov ecx, eax
and ecx, 0xffffffdf
cmp ecx, 0x49
je 0x42fb79
cmp ecx, 0x4e
je 0x42fac6
add eax, 0xffffffd0
cmp eax, 9
ja 0x42f677
mov ecx, dword [ebp - 0x1c]
mov esi, dword [ecx + 0x44]
cmp edx, esi
jae 0x42f5f0
mov dword [ebp - 0x18], edi
mov edi, ecx
movsx ecx, byte [edx]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x42f5ea
inc edx
mov dword [edi + 0x3c], edx
cmp edx, esi
jb 0x42f5d7
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x18]
movsx ecx, byte [edx]
cmp ecx, 0x2e
je 0x42fa70
mov eax, ecx
and eax, 0xffffffdf
cmp eax, 0x45
je 0x42f61a
cmp ecx, 0x71
je 0x42f61a
cmp ecx, 0x51
je 0x42f61a
cmp ecx, 0x64
je 0x42f61a
cmp ecx, 0x44
jne 0x42f643
mov ecx, dword [ebp - 0x1c]
inc edx
cmp edx, esi
mov dword [ecx + 0x3c], edx
jae 0x42f643
mov dword [ebp - 0x18], edi
mov edi, ecx
movsx ecx, byte [edx]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x42f63d
inc edx
mov dword [edi + 0x3c], edx
cmp edx, esi
jb 0x42f62a
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x5ac]
call fcn.004303c0
test eax, eax
jne 0x42f697
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x3c]
cmp byte [edx], 0x29
jne 0x42f677
mov ecx, dword [ebp - 0x1c]
inc edx
mov dword [ecx + 0x3c], edx
mov edx, dword [ebp - 0x5ac]
and byte [edx + 0x29], 0xef
and byte [edx + 0x28], 0xef
jmp 0x42f6d6
mov eax, dword [ebp - 0x5ac]
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
mov dword [eax + 0x14], 0x3b
mov eax, 0x3b
jmp 0x42f7df
mov edx, dword [ebp - 0x5ac]
mov dword [edx + 0x14], eax
jne 0x42f42e
jmp 0x42f6d6
mov eax, dword [ebp - 0x5ac]
mov ebx, dword [ebp - 0x24]
mov edi, esi
mov esi, dword [ebp - 0x20]
mov dword [eax + 0x14], 0x3b
mov eax, 0x3b
jmp 0x42f7df
mov edx, dword [ebp - 0x5ac]
mov dword [edx + 0x14], eax
jne 0x42f42e
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov eax, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, esi
test byte [edx + 0x28], 2
jne 0x42f731
lea esi, [ebp - 0x3fc]
mov dword [esp + 0xc], esi
mov eax, edx
lea edx, [ebp - 0x1ac]
mov ecx, dword [ebp - 0x404]
call fcn.004306d0
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov ecx, edx
lea edx, [ebp - 0x1ac]
or byte [ebp - 0x355], 4
lea esi, [ebp - 0x3fc]
push edx
push dword [ecx + 0x24]
push esi
call fcn.00442900
mov dword [ebp - 0x28], eax
add esp, 0xc
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, esi
test byte [edx + 0x28], 4
jne 0x42fb83
lea esi, [ebp - 0x3fc]
mov dword [esp + 0xc], esi
mov eax, edx
lea edx, [ebp - 0x1ac]
mov ecx, dword [ebp - 0x404]
call fcn.004306d0
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, dword [ebp - 0x24]
movzx ecx, byte [edx + 0x2a]
mov edx, dword [ebp - 0x24]
and ecx, 0xffffffef
cmp dword [ebp - 0x28], 0
mov byte [edx + 0x2a], cl
je 0x42f089
mov ecx, edx
mov edx, dword [ebp - 0x28]
mov dword [ecx + 0x14], edx
jmp 0x42f089
mov eax, dword [ebp - 0x28]
mov ebx, esi
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
mov edx, 0x40
test eax, eax
je 0x42f7e6
mov dword [ebx + 0x14], eax
mov edx, eax
jmp 0x42f7ed
mov dword [ebx + 0x14], 0x40
test edx, edx
jne 0x42f939
cmp dword [ebp - 0x1a4], 1
jne 0x42f92c
mov ecx, dword [edi + 0x50]
test ecx, ecx
jne 0x42f80c
mov ecx, dword [edi + 0x44]
mov eax, ecx
cdq
add ecx, dword [edi + 0xc8]
mov dword [ebp - 0x24], ebx
mov ebx, edx
adc ebx, dword [edi + 0xcc]
sub ecx, dword [edi + 0xd8]
mov eax, dword [edi + 0x38]
sbb ebx, dword [edi + 0xdc]
sub ecx, eax
cdq
mov dword [edi + 0xc0], ecx
sbb ebx, edx
movzx ecx, word [edi + 0x164]
test ecx, ecx
mov dword [edi + 0xc4], ebx
mov ebx, dword [ebp - 0x24]
jg 0x42f8b8
push dword [ebx + 4]
call fcn.00431ee0
add esp, 4
test eax, eax
je 0x42f8b8
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42fbb9
test byte [edx + 0x44], 2
je 0x42f893
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42f886
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [edi + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [edi + 0x17c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push dword [edi + 0x108]
call fcn.004325f0
add esp, 4
test eax, eax
je 0x42f925
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42fbd3
test byte [edx + 0x44], 2
je 0x42f900
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42f8f3
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [edi + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [edi + 0x17c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov dword [esi + 4], 0
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push dword [ebx + 4]
call fcn.00431ee0
add esp, 4
test eax, eax
je 0x42f9a3
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42fbed
test byte [edx + 0x44], 2
je 0x42f97e
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42f971
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [edi + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [edi + 0x17c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42fc07
test byte [edx + 0x44], 2
je 0x42f9e2
mov eax, dword [ebx + 0x14]
mov dword [edx + 0x38], eax
mov ecx, dword [edi + 0x18]
mov edx, dword [ebx + 0x14]
mov dword [ecx + 0x3c], edx
mov eax, dword [edi + 0x64]
test eax, eax
je 0x42f9d2
xor edx, edx
mov dword [eax + 4], edx
mov dword [edi + 0x64], edx
mov eax, dword [ebx + 0x14]
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebx + 0x14]
push ebx
movzx eax, byte [edi + 0x17c]
push ebx
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, esi
lea edx, [ebp - 0x1ac]
or byte [ebp - 0x355], 4
lea esi, [ebp - 0x3fc]
push edx
push dword [ecx + 0x24]
push esi
call fcn.00442900
mov dword [ebp - 0x28], eax
add esp, 0xc
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov ecx, esi
or edx, 0x10
cmp dword [ebp - 0x28], 0
mov byte [ecx + 0x28], dl
je 0x42fa65
mov eax, dword [ebp - 0x28]
mov ebx, ecx
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
mov edx, ecx
and byte [edx + 0x2a], 0xef
jmp 0x42f092
mov ecx, dword [ebp - 0x1c]
inc edx
cmp edx, esi
mov dword [ecx + 0x3c], edx
jae 0x42fabe
mov dword [ebp - 0x344], ebx
mov dword [ebp - 0x18], edi
mov ebx, ecx
movsx ecx, byte [edx]
lea eax, [ecx - 0x30]
cmp eax, 9
ja 0x42faad
inc edx
mov dword [ebx + 0x3c], edx
cmp edx, esi
jb 0x42fa86
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x344]
mov edi, dword [ebp - 0x18]
movsx ecx, byte [edx]
jmp 0x42f5fc
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x344]
mov edi, dword [ebp - 0x18]
jmp 0x42f5fc
movsx ecx, byte [edx]
jmp 0x42f5fc
mov esi, 0x4ebf7c
test esi, esi
je 0x42f5bc
movsx ecx, byte [esi]
test ecx, ecx
mov dword [ebp - 0x5b0], ecx
je 0x42fb12
mov dword [ebp - 0x344], ebx
mov dword [ebp - 0x18], edi
mov ebx, dword [ebp - 0x1c]
movsx eax, byte [edx]
cmp eax, ecx
je 0x42fafa
add ecx, 0x20
cmp eax, ecx
jne 0x42fb06
inc esi
inc edx
mov dword [ebx + 0x3c], edx
movsx ecx, byte [esi]
test ecx, ecx
jne 0x42faec
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x344]
mov edi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x5ac]
call fcn.004303c0
test eax, eax
jne 0x42f697
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x3c]
cmp byte [edx], 0x28
je 0x42fb56
cmp byte [edx], 0x29
jne 0x42f677
mov ecx, dword [ebp - 0x1c]
inc edx
mov dword [ecx + 0x3c], edx
mov edx, dword [ebp - 0x5ac]
and byte [edx + 0x29], 0xef
and byte [edx + 0x28], 0xef
jmp 0x42f6d6
cmp dword [ebp - 0x5b0], 0x4e
jne 0x42fb33
mov ecx, dword [ebp - 0x1c]
inc edx
mov esi, ecx
mov dword [ecx + 0x3c], edx
movsx ecx, byte [edx]
inc edx
mov dword [esi + 0x3c], edx
cmp ecx, 0x29
jne 0x42fb68
mov dword [ebp - 0x1c], esi
jmp 0x42fb33
mov esi, str.INFINITY
jmp 0x42facb
mov ecx, edx
lea edx, [ebp - 0x1ac]
push edx
lea esi, [ebp - 0x3fc]
push dword [ecx + 0x24]
push esi
call fcn.00442900
mov dword [ebp - 0x28], eax
add esp, 0xc
cmp dword [ebp - 0x28], 0
je 0x42f7a4
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
jmp 0x42f7df
push edi
push eax
push eax
push 0
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edi
push eax
push eax
push 0
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edi
push eax
push eax
push 0
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edi
mov eax, dword [ebx + 0x14]
push eax
push eax
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ebx, edx
mov edi, dword [ebp - 0x1c]
jmp 0x42f939
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x418]
mov esi, dword [edx + 0x108]
inc word [edx + 0x164]
mov dword [ebp - 0x350], esi
mov dword [ebp - 0x418], 0x5453494c
mov dword [ebp - 0x414], 0x45524944
mov dword [ebp - 0x410], 0x44455443
mov byte [ebp - 0x40c], 0
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x42fc86
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x42fc71
dec eax
xor edx, edx
lea esi, [ebp - 0x348]
push esi
push edx
push 0x39
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x34c], edx
mov dword [ebp - 0x5a4], edx
mov dword [ebp - 0x5a0], edx
mov dword [ebp - 0x59c], edx
mov dword [ebp - 0x598], edx
mov dword [ebp - 0x594], 1
mov dword [ebp - 0x590], edx
mov dword [ebp - 0x58c], edx
mov dword [ebp - 0x588], edx
mov dword [ebp - 0x584], edx
call fcn.00431e20
add esp, 0xc
test eax, eax
jne 0x42f886
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0x84]
mov dword [ecx], edx
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0x78]
mov dword [ecx + 4], edx
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0xfc]
mov dword [ecx + 0x18], edx
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0x120]
mov dword [ecx + 0x1c], edx
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x166]
mov byte [ecx + 0x2c], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x167]
mov byte [ecx + 0x2d], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x168]
mov byte [ecx + 0x2e], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x16b]
mov byte [ecx + 0x2f], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x16c]
mov byte [ecx + 0x30], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x175]
mov byte [ecx + 0x31], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x176]
mov byte [ecx + 0x32], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x173]
mov byte [ecx + 0x33], dl
mov ecx, dword [ebp - 0x348]
movzx edx, byte [esi + 0x174]
mov byte [ecx + 0x34], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x179]
shr ecx, 5
movzx edx, byte [eax + 0x35]
and ecx, 1
and edx, 0xfffffffe
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17a]
shr ecx, 2
and ecx, 1
movzx edx, byte [eax + 0x35]
add ecx, ecx
and edx, 0xfffffffd
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17b]
shr ecx, 5
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 2
and edx, 0xfffffffb
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17b]
shr ecx, 6
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 3
and edx, 0xfffffff7
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17b]
shr ecx, 3
movzx edx, byte [eax + 0x35]
and ecx, 0xfffffff0
and edx, 0xffffffef
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17c]
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 5
and edx, 0xffffffdf
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17c]
shr ecx, 1
and ecx, 1
movzx edx, byte [eax + 0x35]
shl ecx, 6
and edx, 0xffffffbf
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17c]
shr ecx, 2
movzx edx, byte [eax + 0x35]
shl ecx, 7
and edx, 0x7f
or edx, ecx
mov byte [eax + 0x35], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17e]
and ecx, 2
movzx edx, byte [eax + 0x36]
and edx, 0xfffffffd
or edx, ecx
mov byte [eax + 0x36], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17e]
and ecx, 4
movzx edx, byte [eax + 0x36]
and edx, 0xfffffffb
or edx, ecx
mov byte [eax + 0x36], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17e]
and ecx, 1
movzx edx, byte [eax + 0x36]
and edx, 0xfffffffe
or edx, ecx
mov byte [eax + 0x36], dl
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0x80]
mov dword [ecx + 0x10], edx
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17f]
shr ecx, 6
and ecx, 1
movzx edx, byte [eax + 0x36]
shl ecx, 4
and edx, 0xffffffef
or edx, ecx
mov byte [eax + 0x36], dl
mov eax, dword [ebp - 0x348]
movzx ecx, byte [esi + 0x17f]
and ecx, 0x20
movzx edx, byte [eax + 0x36]
and edx, 0xffffffdf
or edx, ecx
mov byte [eax + 0x36], dl
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0x74]
mov dword [ecx + 0x14], edx
mov edx, dword [esi + 0x58]
mov ecx, dword [ebp - 0x348]
mov edx, dword [edx + 0x14]
mov dword [ecx + 0x20], edx
mov edx, dword [esi + 0x58]
mov ecx, dword [ebp - 0x348]
mov edx, dword [edx + 4]
mov dword [ecx + 8], edx
mov edx, dword [esi + 0x58]
mov ecx, dword [ebp - 0x348]
mov edx, dword [edx + 8]
mov dword [ecx + 0xc], edx
mov eax, dword [esi + 0x58]
mov ecx, dword [ebp - 0x348]
movzx eax, byte [eax + 0xa7]
shr eax, 1
and eax, 1
movzx edx, byte [ecx + 0x36]
shl eax, 3
and edx, 0xfffffff7
or edx, eax
mov byte [ecx + 0x36], dl
mov ecx, dword [ebp - 0x348]
mov edx, dword [esi + 0x90]
mov dword [ecx + 0x28], edx
mov edx, dword [ebp - 0x348]
mov dword [edx + 0x24], 0
mov ecx, dword [esi + 0x90]
test ecx, ecx
je 0x42ffea
mov edx, dword [ebp - 0x348]
mov dword [ecx + 0x24], edx
mov edx, dword [ebp - 0x348]
jmp 0x42fffe
mov ecx, esi
mov edx, dword [ebp - 0x348]
mov dword [ecx + 0x8c], edx
mov edx, dword [ebp - 0x348]
mov ecx, esi
mov dword [ecx + 0x90], edx
mov esi, dword [ecx + 0x84]
test esi, esi
mov edx, dword [ebp - 0x1a0]
je 0x43029f
lea eax, [ebp - 0x34c]
push dword [ecx + 0xfc]
push dword [ebp - 0x340]
push esi
push eax
lea esi, [ebp - 0x5a4]
push esi
lea ecx, [ebp - 0x418]
push ecx
lea esi, [ebp - 0x350]
push esi
push dword [ebp - 0x1ac]
call edx
add esp, 0x20
mov eax, dword [ebp - 0x1c]
mov esi, dword [eax + 0x90]
mov dword [ebp - 0x400], esi
mov edx, dword [esi]
mov dword [eax + 0x84], edx
mov ecx, dword [esi + 4]
mov dword [eax + 0x78], ecx
mov edx, dword [esi + 0x18]
mov dword [eax + 0xfc], edx
mov ecx, dword [esi + 0x1c]
mov dword [eax + 0x120], ecx
movzx ecx, byte [esi + 0x2c]
mov byte [eax + 0x166], cl
movzx edx, byte [esi + 0x2d]
mov byte [eax + 0x167], dl
movzx edx, byte [esi + 0x2e]
mov byte [eax + 0x168], dl
movzx edx, byte [esi + 0x2f]
mov byte [eax + 0x16b], dl
movzx edx, byte [esi + 0x30]
mov byte [eax + 0x16c], dl
movzx edx, byte [esi + 0x31]
mov byte [eax + 0x175], dl
movzx edx, byte [esi + 0x32]
mov byte [eax + 0x176], dl
movzx edx, byte [esi + 0x33]
mov byte [eax + 0x173], dl
movzx edx, byte [esi + 0x34]
mov byte [eax + 0x174], dl
movzx ecx, byte [esi + 0x35]
and ecx, 1
movzx edx, byte [eax + 0x179]
shl ecx, 5
and edx, 0xffffffdf
or edx, ecx
mov byte [eax + 0x179], dl
movzx ecx, byte [esi + 0x35]
shr ecx, 1
and ecx, 1
movzx edx, byte [eax + 0x17a]
shl ecx, 2
and edx, 0xfffffffb
or edx, ecx
mov byte [eax + 0x17a], dl
movzx ecx, byte [esi + 0x35]
shr ecx, 2
and ecx, 1
movzx edx, byte [eax + 0x17b]
shl ecx, 5
and edx, 0xffffffdf
or edx, ecx
mov byte [eax + 0x17b], dl
and edx, 0xffffffbf
movzx ecx, byte [esi + 0x35]
shr ecx, 3
and ecx, 1
shl ecx, 6
or edx, ecx
mov byte [eax + 0x17b], dl
and edx, 0x7f
movzx ecx, byte [esi + 0x35]
shr ecx, 4
shl ecx, 7
or edx, ecx
mov byte [eax + 0x17b], dl
movzx ecx, byte [esi + 0x35]
shr ecx, 5
movzx edx, byte [eax + 0x17c]
and ecx, 1
and edx, 0xfffffffe
or edx, ecx
mov byte [eax + 0x17c], dl
and edx, 0xfffffffd
movzx ecx, byte [esi + 0x35]
shr ecx, 6
and ecx, 1
add ecx, ecx
or edx, ecx
mov byte [eax + 0x17c], dl
and edx, 0xfffffffb
movzx ecx, byte [esi + 0x35]
shr ecx, 5
and ecx, 0xfffffffc
or edx, ecx
mov byte [eax + 0x17c], dl
movzx edx, byte [eax + 0x17e]
movzx ecx, byte [esi + 0x36]
and edx, 0xfffffffd
and ecx, 2
or edx, ecx
mov byte [eax + 0x17e], dl
and edx, 0xfffffffb
movzx ecx, byte [esi + 0x36]
and ecx, 4
or edx, ecx
mov byte [eax + 0x17e], dl
and edx, 0xfffffffe
movzx ecx, byte [esi + 0x36]
and ecx, 1
or edx, ecx
mov byte [eax + 0x17e], dl
mov edx, dword [esi + 0x10]
mov dword [eax + 0x80], edx
movzx ecx, byte [esi + 0x36]
shr ecx, 4
and ecx, 1
movzx edx, byte [eax + 0x17f]
shl ecx, 6
and edx, 0xffffffbf
or edx, ecx
mov byte [eax + 0x17f], dl
and edx, 0xffffffdf
movzx ecx, byte [esi + 0x36]
and ecx, 0x20
or edx, ecx
mov byte [eax + 0x17f], dl
mov edx, dword [esi + 0x14]
mov dword [eax + 0x74], edx
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x43026e
mov edx, eax
mov dword [edx + 0x90], ecx
push dword [ecx + 0x24]
call fcn.00431ee0
mov dword [ebp - 0x28], eax
add esp, 4
cmp dword [ebp - 0x28], 0
jne 0x42f886
mov edx, dword [ebp - 0x1c]
dec word [edx + 0x164]
mov eax, dword [ebp - 0x34c]
test eax, eax
je 0x42f089
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x400]
call fcn.00431ee0
mov dword [ebp - 0x28], eax
add esp, 4
mov edx, dword [ebp - 0x1c]
cmp dword [ebp - 0x28], 0
mov dword [edx + 0x90], 0
je 0x430249
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 0xc8
push dword [ebp - 0x340]
lea ecx, [ebp - 0x678]
push ecx
lea esi, [ebp - 0x34c]
push esi
lea eax, [ebp - 0x5a4]
push eax
lea ecx, [ebp - 0x418]
push ecx
lea esi, [ebp - 0x350]
push esi
push dword [ebp - 0x1ac]
call edx
jmp 0x43004b
mov dword [ebp - 0x334], 1
jmp 0x42eec2
mov ecx, 1
jmp 0x42ee11
mov ecx, 1
jmp 0x42f029
mov ecx, dword [ebp - 0x1a4]
jmp 0x42f0b8
mov ebx, 2
cmp dword [ebp - 4], 0
jne 0x42ef95
mov dword [ebp - 0x28], esi
jmp 0x42f0c1
mov ebx, dword [ebp - 0x24]
mov eax, esi
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
mov edx, dword [ebx + 0x14]
jmp 0x42f7ed
mov edi, dword [ebp - 0x1c]
mov eax, esi
mov edx, dword [edi + 0x18]
test edx, edx
je 0x43038e
test byte [edx + 0x44], 2
je 0x430369
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [edi + 0x64]
test edx, edx
je 0x43035c
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [edi + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [edi + 0x17c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043da80
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edi
push eax
push eax
push 1
call fcn.00409370
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
xor eax, eax
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret