Function at 0x42bcf0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3cc
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], ebx
mov edi, dword [eax + 4]
test edi, edi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], eax
je 0x42db01
xor eax, eax
mov ebx, 1
mov esi, dword [edi + 0x58]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov edx, dword [esi + 0xc]
cmp edx, 1
jle 0x42bda4
lea eax, [edx - 1]
mov dword [ebp - 4], eax
mov dword [esi + 0xc], eax
movzx eax, byte [esi + 0x4f]
test al, 0x10
je 0x42bdea
test al, 0x20
je 0x42bdea
mov ecx, dword [ebp + 0xc]
movsx ecx, byte [ecx]
cmp ecx, 2
je 0x42cef2
and eax, 0xffffffdf
cmp ecx, 1
je 0x42ced7
and eax, 0xffffffbf
push edi
mov byte [esi + 0x4f], al
mov dword [ebp - 0x38], edx
call fcn.00446540
mov edx, dword [ebp - 0x38]
add esp, 4
test eax, eax
jne 0x42ce66
movzx eax, byte [esi + 0x4f]
test al, 0x10
je 0x42bd96
test al, 0x20
jne 0x42dace
mov edx, dword [ebp - 4]
mov dword [esi + 0xc], edx
or eax, 0x20
mov byte [esi + 0x4f], al
jmp 0x42bdea
mov eax, dword [ebp + 0xc]
movsx edx, byte [eax]
cmp edx, 2
je 0x42daaf
movzx eax, byte [esi + 0x4f]
and eax, 0xffffffdf
cmp edx, 1
je 0x42da94
and eax, 0xffffffbf
push edi
mov byte [esi + 0x4f], al
call fcn.00446540
add esp, 4
test eax, eax
jne 0x42da23
movzx eax, byte [esi + 0x4f]
test al, 0x10
je 0x42bdea
test al, 0x20
jne 0x42cf0d
movsx edx, byte [esi + 0x48]
add edx, 0xfffffffe
cmp edx, 0x1a
ja case.0x42bdfa.3
jmp dword [edx*4 + 0x4e5440]
mov eax, dword [esi + 0x3c]
mov dword [ebp - 0x1c0], eax
mov eax, dword [edi + 0x3c]
mov ecx, dword [esi + 0x38]
mov dword [ebp - 0x1b4], ecx
mov edx, dword [edi + 0x44]
mov dword [ebp - 0x1bc], edx
add ecx, eax
cmp edx, ecx
jb 0x42cf53
cmp dword [ebp - 0x1b4], 0
jg 0x42cf27
mov edx, dword [edi + 0x4c]
cmp eax, edx
mov dword [edi + 0x128], 0
ja 0x42be49
mov eax, edx
mov dword [edi + 0x4c], eax
or byte [edi + 0x171], 0x80
jmp 0x42bd29
mov edx, dword [edi + 0x7c]
test edx, edx
je 0x42be77
movzx eax, byte [edx + 0x1e]
test eax, eax
je 0x42be77
mov byte [edx + 0x1e], 0
mov dword [ebp - 0x1b8], 1
jmp 0x42be81
mov dword [ebp - 0x1b8], 0
movzx eax, byte [edi + 0x16d]
test al, 0x40
je 0x42be99
cmp byte [edi + 0x156], 1
je 0x42d01b
push edi
call fcn.00435300
add esp, 4
test eax, eax
jne 0x42d0f6
add dword [edi + 0x98], 1
push 0
push edi
adc dword [edi + 0x9c], 0
and byte [edi + 0x16f], 0xfb
call fcn.004367f0
add esp, 8
test eax, eax
jne 0x42d071
movsx eax, byte [edi + 0x154]
mov dword [ebp - 0x1c4], eax
lea eax, [eax - 1]
cmp eax, 7
ja case.default.0x42beeb
jmp dword [eax*4 + 0x4e54c0]
mov ecx, dword [edi + 0x40]
test ecx, ecx
je 0x42befe
mov dword [edi + 0x3c], ecx
jmp 0x42bf04
mov ecx, dword [edi + 0x38]
mov dword [edi + 0x3c], ecx
mov eax, dword [edi + 0xf8]
movzx edx, byte [edi + 0x168]
lea eax, [ecx + eax - 1]
mov dword [edi + 0x44], eax
jmp 0x42c031
mov eax, dword [edi + 0x18]
test eax, eax
je 0x42d052
test byte [eax + 0x44], 2
je 0x42bf5d
mov edx, 0x2c
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42bf4b
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x2c
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x2c
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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, dword [edi + 0x40]
test ecx, ecx
je 0x42bf93
add ecx, 4
jmp 0x42bf99
mov ecx, dword [edi + 0x38]
add ecx, 4
mov eax, dword [edi + 0xf8]
mov dword [edi + 0x3c], ecx
movzx edx, byte [edi + 0x168]
lea eax, [ecx + eax - 8]
mov dword [edi + 0x44], eax
jmp 0x42c031
mov ecx, dword [edi + 0x40]
test ecx, ecx
je 0x42bfbe
mov dword [edi + 0x3c], ecx
jmp 0x42bfc4
mov ecx, dword [edi + 0x38]
mov dword [edi + 0x3c], ecx
mov eax, dword [edi + 0xf8]
movzx edx, byte [edi + 0x168]
test dl, 4
mov dword [ebp - 0x1fc], eax
lea eax, [ecx + eax]
je 0x42bffa
test byte [edi + 0x16a], 0x40
je 0x42bffa
test byte [edi + 0x16b], 8
je 0x42bffa
cmp dword [ebp - 0x1c4], 1
je 0x42bfff
mov dword [edi + 0x44], eax
jmp 0x42c031
mov eax, dword [ebp - 0x1fc]
lea eax, [ecx + eax - 2]
mov dword [edi + 0x44], eax
jmp 0x42c031
push 0x468
push str.for_wseq_fmt.c
push 2
push 8
call fcn.0041aca0
add esp, 0x10
movzx edx, byte [edi + 0x168]
mov ecx, dword [edi + 0x3c]
mov eax, dword [edi + 0x44]
test dl, 4
je 0x42c051
test byte [edi + 0x16a], 0x40
je 0x42c051
test byte [edi + 0x16b], 8
je 0x42c051
cmp byte [edi + 0x154], 1
je 0x42c09e
movsx edx, byte [edi + 0x156]
cmp edx, 2
jne 0x42c079
movsx edx, byte [edi + 0x154]
cmp edx, 7
je 0x42c09e
cmp edx, 6
je 0x42c09e
cmp edx, 8
je 0x42c09e
dec eax
mov dword [edi + 0x44], eax
jmp 0x42c09e
cmp edx, 1
jne 0x42c09e
movsx edx, byte [edi + 0x154]
cmp edx, 7
je 0x42c098
cmp edx, 6
je 0x42c098
cmp edx, 8
je 0x42c098
dec eax
mov dword [edi + 0x44], eax
add ecx, 5
mov dword [edi + 0x3c], ecx
sub eax, ecx
push eax
push 0x20
push ecx
mov dword [edi + 0x48], ecx
mov dword [edi + 0x4c], ecx
call fcn.004c0f40
add esp, 0xc
mov dword [edi + 0x128], 0
cmp dword [ebp - 0x1b8], 0
je 0x42bd29
mov eax, dword [edi + 0x7c]
mov byte [eax + 0x1e], 1
jmp 0x42bd29
cmp ebx, 2
jge 0x42bd29
jmp 0x42d167
test byte [edi + 0x168], 4
je 0x42c0fe
mov eax, dword [edi + 0x7c]
mov byte [eax + 0x1e], 1
mov edx, dword [edi + 0x7c]
mov dword [edx + 0xc], edi
jmp 0x42bd29
or byte [edi + 0x16d], 0x40
jmp 0x42bd29
mov edx, dword [ebp + 0xc]
movsx edx, byte [edx]
cmp edx, 1
je 0x42d609
cmp edx, 2
je 0x42d5ea
test byte [esi + 0x4e], 0x20
jne 0x42c1cd
test byte [edi + 0x168], 2
je 0x42c163
test eax, 0x80
je 0x42c163
push ebx
lea eax, [ebp - 0x37c]
push eax
lea edx, [ebp - 0x1d4]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea eax, [ebp + 0xc]
push eax
call fcn.0043a4c0
add esp, 0x14
test eax, eax
jne 0x42d463
mov eax, dword [edi + 0x18]
test eax, eax
je 0x42d444
test byte [eax + 0x44], 2
je 0x42c1a3
mov edx, 0x69
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42c191
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x69
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x69
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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 + 0x7c]
test edx, edx
je 0x42c1e7
movzx eax, byte [edx + 0x1e]
test eax, eax
je 0x42c1e7
mov byte [edx + 0x1e], 0
mov edx, 1
jmp 0x42c1e9
xor edx, edx
cmp dword [edi + 0x128], 0
je 0x42c217
movzx eax, byte [edi + 0x171]
test eax, 0x80
mov dword [edi + 0x128], 0
jne 0x42c217
cmp dword [edi + 0x130], 0
jne 0x42c4f3
movzx eax, byte [edi + 0x16d]
test al, 0x40
mov dword [ebp - 0x1e0], eax
je 0x42c235
cmp byte [edi + 0x156], 1
je 0x42d48c
push edi
mov dword [ebp - 0x1dc], edx
call fcn.00435300
mov edx, dword [ebp - 0x1dc]
add esp, 4
test eax, eax
jne 0x42d579
add dword [edi + 0x98], 1
push 0
push edi
adc dword [edi + 0x9c], 0
and byte [edi + 0x16f], 0xfb
mov dword [ebp - 0x1dc], edx
call fcn.004367f0
mov edx, dword [ebp - 0x1dc]
add esp, 8
test eax, eax
jne 0x42d4f4
movsx eax, byte [edi + 0x154]
mov dword [ebp - 0x1e8], eax
lea eax, [eax - 1]
cmp eax, 7
ja case.default.0x42c29f
jmp dword [eax*4 + 0x4e54e0]
mov eax, dword [edi + 0x40]
test eax, eax
je 0x42c2b2
mov dword [edi + 0x3c], eax
jmp 0x42c2b8
mov eax, dword [edi + 0x38]
mov dword [edi + 0x3c], eax
mov ecx, dword [edi + 0xf8]
lea ecx, [eax + ecx - 1]
mov dword [ebp - 0x1f4], ecx
mov dword [edi + 0x44], ecx
movzx ecx, byte [edi + 0x168]
mov dword [ebp - 0x1f0], ecx
jmp 0x42c42f
mov eax, dword [edi + 0x18]
test eax, eax
je 0x42d4d5
test byte [eax + 0x44], 2
je 0x42c31d
mov edx, 0x2c
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42c30b
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x2c
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x2c
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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 eax, dword [edi + 0x40]
test eax, eax
je 0x42c353
add eax, 4
jmp 0x42c359
mov eax, dword [edi + 0x38]
add eax, 4
mov ecx, dword [edi + 0xf8]
mov dword [edi + 0x3c], eax
lea ecx, [eax + ecx - 8]
mov dword [ebp - 0x1f4], ecx
mov dword [edi + 0x44], ecx
movzx ecx, byte [edi + 0x168]
mov dword [ebp - 0x1f0], ecx
jmp 0x42c42f
mov eax, dword [edi + 0x40]
test eax, eax
je 0x42c38d
mov dword [edi + 0x3c], eax
jmp 0x42c393
mov eax, dword [edi + 0x38]
mov dword [edi + 0x3c], eax
mov ecx, dword [edi + 0xf8]
mov dword [ebp - 0x3c8], ecx
add ecx, eax
mov dword [ebp - 0x1f4], ecx
movzx ecx, byte [edi + 0x168]
test cl, 4
mov dword [ebp - 0x1f0], ecx
je 0x42c3d4
test byte [edi + 0x16a], 0x40
je 0x42c3d4
test byte [edi + 0x16b], 8
je 0x42c3d4
cmp dword [ebp - 0x1e8], 1
je 0x42c3df
mov ecx, dword [ebp - 0x1f4]
mov dword [edi + 0x44], ecx
jmp 0x42c42f
mov ecx, dword [ebp - 0x3c8]
lea ecx, [eax + ecx - 2]
mov dword [ebp - 0x1f4], ecx
mov dword [edi + 0x44], ecx
jmp 0x42c42f
push 0x538
push str.for_wseq_fmt.c
push 2
push 8
mov dword [ebp - 0x1dc], edx
call fcn.0041aca0
mov edx, dword [ebp - 0x1dc]
add esp, 0x10
movzx eax, byte [edi + 0x168]
mov ecx, dword [edi + 0x44]
mov dword [ebp - 0x1f0], eax
mov eax, dword [edi + 0x3c]
mov dword [ebp - 0x1f4], ecx
test byte [ebp - 0x1f0], 4
je 0x42c453
test byte [edi + 0x16a], 0x40
je 0x42c453
test byte [edi + 0x16b], 8
je 0x42c453
cmp byte [edi + 0x154], 1
je 0x42c4b8
movsx ecx, byte [edi + 0x156]
cmp ecx, 2
jne 0x42c487
movsx ecx, byte [edi + 0x154]
cmp ecx, 7
je 0x42c4b8
cmp ecx, 6
je 0x42c4b8
cmp ecx, 8
je 0x42c4b8
mov ecx, dword [ebp - 0x1f4]
dec ecx
mov dword [ebp - 0x1f4], ecx
mov dword [edi + 0x44], ecx
jmp 0x42c4b8
cmp ecx, 1
jne 0x42c4b8
movsx ecx, byte [edi + 0x154]
cmp ecx, 7
je 0x42c4b2
cmp ecx, 6
je 0x42c4b2
cmp ecx, 8
je 0x42c4b2
mov ecx, dword [ebp - 0x1f4]
dec ecx
mov dword [ebp - 0x1f4], ecx
mov dword [edi + 0x44], ecx
add eax, 5
mov dword [edi + 0x3c], eax
mov ecx, dword [ebp - 0x1f4]
sub ecx, eax
push ecx
push 0x20
push eax
mov dword [edi + 0x48], eax
mov dword [edi + 0x4c], 0
mov dword [ebp - 0x1dc], edx
call fcn.004c0f40
mov edx, dword [ebp - 0x1dc]
add esp, 0xc
mov dword [edi + 0x130], 1
and byte [edi + 0x171], 0x7f
test edx, edx
je 0x42c4fe
mov eax, dword [edi + 0x7c]
mov byte [eax + 0x1e], 1
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x4c], eax
jmp 0x42bd29
cmp ebx, 1
jle 0x42c5e5
mov eax, dword [ebp - 0x37c]
cmp eax, 7
je 0x42c526
cmp eax, 8
jne 0x42c5b3
cmp dword [ebp - 0x20], 0
je 0x42c545
mov eax, dword [ebp - 0x1c8]
dec ebx
add dword [ebp - 0x1d4], eax
mov dword [ebp - 0x20], 0
jmp 0x42c7e5
cmp dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x20]
je 0x42c553
mov eax, 1
xor ecx, ecx
mov edx, dword [ebp - 0x378]
test edx, edx
mov dword [ebp - 0x20], eax
jle 0x42c58d
mov dword [ebp - 0x1b0], edi
xor eax, eax
mov edi, dword [ebp + eax*4 - 0x1ac]
sub edi, dword [ebp + eax*4 - 0xb4]
imul edi, dword [ebp + eax*4 - 0x130]
inc eax
add ecx, edi
cmp eax, edx
jl 0x42c56a
mov edi, dword [ebp - 0x1b0]
add ecx, dword [ebp - 0x374]
lea eax, [ebp - 0x37c]
push eax
mov dword [ebp - 0x1d4], ecx
lea edx, [ebp - 0x1ac]
push edx
push 0
call fcn.00438520
add esp, 0xc
jmp 0x42c5ce
mov edx, dword [ebp - 0x20]
test edx, edx
mov eax, dword [ebp - 0x1c8]
je 0x42c5c5
mov edx, 0
add dword [ebp - 0x1d4], eax
mov dword [ebp - 0x20], edx
mov dword [edi + 0x128], 0
dec ebx
or byte [edi + 0x171], 0x80
jmp 0x42c7e5
lea eax, [ebp - 0x37c]
push eax
lea edx, [ebp - 0x1d4]
push edx
lea ecx, [ebp + 0x10]
push ecx
lea ebx, [ebp + 0xc]
push ebx
call fcn.0043a220
add esp, 0x10
test eax, eax
jne 0x42d9b2
mov ecx, dword [ebp - 0x1cc]
cmp ecx, 2
je 0x42dae0
cmp ecx, 1
je 0x42d176
mov eax, dword [ebp - 0x37c]
cmp eax, 7
jl 0x42c751
cmp eax, 8
jg 0x42c751
mov eax, dword [ebp - 0x1c8]
test eax, eax
mov dword [ebp - 0x1f8], eax
je 0x42c65e
mov eax, dword [ebp - 0x1d0]
cdq
mov ebx, dword [ebp - 0x1f8]
idiv ebx
mov ebx, eax
jmp 0x42c671
test byte [edi + 0x168], 2
je 0x42c743
mov ebx, dword [ebp - 0x1d0]
test ebx, ebx
je 0x42c745
cmp ecx, 0x34
je 0x42c688
cmp ecx, 0x1c
jl 0x42c695
cmp ecx, 0x2c
jg 0x42c695
mov eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], eax
jmp 0x42c69c
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x378]
test eax, eax
jle 0x42c6e8
mov dword [ebp - 0x1b0], edi
xor ecx, ecx
lea edi, [ecx*8]
lea edi, [edi + ecx*4]
mov edx, dword [ebp + edi - 0x36c]
mov edi, dword [ebp + edi - 0x368]
mov dword [ebp + ecx*4 - 0xb4], edx
mov dword [ebp + ecx*4 - 0x130], edi
mov dword [ebp + ecx*4 - 0x1ac], edx
inc ecx
cmp ecx, eax
jl 0x42c6ae
mov edi, dword [ebp - 0x1b0]
test eax, eax
mov ecx, 0
jle 0x42c71a
mov dword [ebp - 0x1b0], edi
xor edx, edx
mov edi, dword [ebp + edx*4 - 0x1ac]
sub edi, dword [ebp + edx*4 - 0xb4]
imul edi, dword [ebp + edx*4 - 0x130]
inc edx
add ecx, edi
cmp edx, eax
jl 0x42c6f7
mov edi, dword [ebp - 0x1b0]
add ecx, dword [ebp - 0x374]
lea eax, [ebp - 0x37c]
push eax
mov dword [ebp - 0x1d4], ecx
lea edx, [ebp - 0x1ac]
push edx
push 0
call fcn.00438520
add esp, 0xc
jmp 0x42c7d4
xor ebx, ebx
mov dword [ebp - 0x18], 1
jmp 0x42c7eb
cmp eax, 6
je 0x42c75b
cmp eax, 5
jne 0x42c7b2
movzx ecx, byte [edi + 0x168]
and ecx, 2
mov eax, dword [ebp - 0x1c8]
shr ecx, 1
mov ebx, dword [ebp - 0x1d0]
test eax, eax
mov dword [ebp - 0x1d8], eax
je 0x42c790
mov eax, ebx
cdq
mov ebx, dword [ebp - 0x1d8]
idiv ebx
mov ebx, eax
test ecx, ecx
jne 0x42c79b
jmp 0x42c7e5
test ecx, ecx
jne 0x42c799
mov ebx, 0
je 0x42c7e5
test ebx, ebx
jne 0x42c7d4
mov dword [edi + 0x128], 1
mov dword [ebp - 0x18], 1
jmp 0x42c7eb
cmp ecx, 0x34
je 0x42c7c1
cmp ecx, 0x1c
jl 0x42c7cf
cmp ecx, 0x2c
jg 0x42c7cf
mov dword [ebp - 0x20], 1
mov ebx, 2
jmp 0x42c7d4
mov ebx, 1
mov dword [edi + 0x128], 0
or byte [edi + 0x171], 0x80
cmp dword [ebp - 0x18], 0
je 0x42c807
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x42c7fe
mov dword [esi + 0xc], 2
jmp 0x42bd29
inc eax
mov dword [esi + 0xc], eax
jmp 0x42bd29
mov eax, dword [esi]
and byte [esi + 0x4f], 0xf7
movsx ecx, byte [esi + 0x48]
movzx edx, byte [eax + 0x16e]
test edx, 0x80
je 0x42c843
mov eax, dword [ecx*4 + 0x4e7e60]
test eax, eax
je 0x42c843
mov edx, dword [ebp - 0x1cc]
movsx eax, byte [eax + edx]
test eax, eax
je 0x42c843
mov dword [ebp - 0x1cc], eax
movsx ecx, byte [esi + 0x48]
lea eax, [ecx - 0x13]
cmp eax, 0x20
ja case.default.0x42c84f
jmp dword [eax*4 + 0x4e5500]
mov edx, dword [esi + 0x38]
test edx, edx
jne 0x42c895
movzx eax, byte [esi + 0x50]
or eax, 2
mov byte [esi + 0x50], al
mov edx, dword [ebp - 0x1cc]
mov dword [ebp - 0x2c], eax
movsx edx, word [edx*2 + 0x4e7d00]
cmp edx, 0xffffffff
mov dword [esi + 0x38], edx
je 0x42d617
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42cceb
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
movzx eax, byte [esi + 0x50]
mov dword [ebp - 0x2c], eax
jmp 0x42cceb
mov eax, dword [ebp - 0x1cc]
movsx edx, word [eax*2 + 0x4e7d00]
cmp edx, 0xffffffff
mov dword [esi + 0x38], edx
je 0x42d63e
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov edx, dword [esi + 0x38]
test edx, edx
jne 0x42c913
movzx eax, byte [esi + 0x50]
or eax, 2
mov byte [esi + 0x50], al
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1cc]
movsx edx, byte [eax + 0x4e80cd]
cmp edx, 0xffffffff
mov dword [esi + 0x38], edx
je 0x42d665
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42cceb
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov edx, dword [esi + 0x38]
test edx, edx
jne 0x42c956
movzx eax, byte [esi + 0x50]
add ecx, 0xffffffd8
or eax, 2
mov byte [esi + 0x50], al
cmp ecx, 0x20
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1cc]
movsx edx, byte [eax + 0x4e80bb]
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42cceb
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov edx, dword [esi + 0x38]
test edx, edx
jne 0x42c9fb
or byte [esi + 0x51], 4
mov eax, dword [ebp - 0x1cc]
cmp eax, 0x19
mov dword [ebp - 0x3cc], eax
jge 0x42d68c
cmp dword [ebp - 0x3cc], 5
jl 0x42c9cb
cmp dword [ebp - 0x3cc], 0x11
jg 0x42c9cb
movzx eax, byte [esi + 0x50]
add ecx, 0xffffffd8
or eax, 2
mov byte [esi + 0x50], al
cmp ecx, 0x20
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1cc]
movsx edx, byte [eax + 0x4e80bb]
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42cceb
cmp dword [ebp - 0x3cc], 0x39
je 0x42c9e1
cmp dword [ebp - 0x3cc], 0x38
jne 0x42cbf6
add ecx, 0xffffffd8
mov edx, dword [ebp - 0x1c8]
cmp ecx, 0x20
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42c8a1
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov edx, dword [esi + 0x38]
test edx, edx
jne 0x42ca5e
or byte [esi + 0x51], 4
mov eax, dword [ebp - 0x1cc]
cmp eax, 5
jl 0x42ca43
cmp eax, 0x11
jg 0x42ca43
or byte [esi + 0x50], 2
mov eax, dword [ebp - 0x1cc]
movsx edx, byte [eax + 0x4e80bb]
mov dword [esi + 0x38], edx
mov eax, dword [ebp - 0x1cc]
jmp 0x42ca64
cmp eax, 0x39
je 0x42ca4d
cmp eax, 0x38
jne 0x42ca64
mov edx, dword [ebp - 0x1c8]
mov dword [esi + 0x38], edx
mov eax, dword [ebp - 0x1cc]
jmp 0x42ca64
mov eax, dword [ebp - 0x1cc]
cmp eax, 0x19
jge case.0x42c84f.30
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov edx, dword [esi + 0x38]
test edx, edx
jne 0x42cab6
movzx eax, byte [esi + 0x50]
add ecx, 0xffffffd8
or eax, 2
mov byte [esi + 0x50], al
mov edx, dword [ebp - 0x1cc]
mov dword [ebp - 0x2c], eax
movsx eax, word [esi + 0x40]
movsx edx, word [edx*8 + 0x4e7cba]
add edx, eax
mov dword [esi + 0x38], edx
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42cceb
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42cce1
mov eax, dword [ebp - 0x1cc]
movsx edx, byte [eax + 0x4e80cd]
cmp edx, 0xffffffff
mov dword [esi + 0x38], edx
je 0x42d6f0
add ecx, 0xffffffd8
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov eax, dword [ebp - 0x1cc]
cmp eax, 5
jl 0x42cbf6
cmp eax, 0x11
jg 0x42cbf6
add ecx, 0xffffffd8
mov edx, 2
mov dword [esi + 0x38], 2
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov eax, dword [ebp - 0x1cc]
cmp eax, 5
jl 0x42cbf6
cmp eax, 0x11
jg 0x42cbf6
add ecx, 0xffffffd8
movsx edx, byte [eax + 0x4e80bb]
cmp ecx, 0x20
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42c8a1
or byte [esi + 0x51], 4
mov eax, dword [ebp - 0x1cc]
cmp eax, 0x19
mov dword [ebp - 0x3c4], eax
jge 0x42d717
cmp dword [ebp - 0x3c4], 5
jl 0x42cbb0
cmp dword [ebp - 0x3c4], 0x11
jg 0x42cbb0
add ecx, 0xffffffd8
cmp ecx, 0x20
movsx edx, byte [eax + 0x4e80bb]
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42c8a1
cmp dword [ebp - 0x3c4], 0x39
je 0x42cbc2
cmp dword [ebp - 0x3c4], 0x38
jne 0x42cbf6
add ecx, 0xffffffd8
mov edx, dword [ebp - 0x1c8]
cmp ecx, 0x20
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42c8a1
mov eax, dword [ebp - 0x1cc]
cmp eax, 0x19
mov dword [ebp - 0x1e4], eax
jl 0x42cbf6
cmp dword [ebp - 0x1e4], 0x34
jle 0x42cc62
add ecx, 0xffffffd8
mov eax, 0x3d
cmp ecx, 0x20
jb 0x42ccbe
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42d764
test byte [edx + 0x44], 2
je 0x42cc3d
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42cc30
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
add ecx, 0xffffffd8
cmp ecx, 0x20
movsx edx, word [eax*8 + 0x4e7cb8]
mov dword [ebp - 0x380], edx
mov dword [esi + 0x38], edx
movzx edx, word [eax*8 + 0x4e7cbc]
movzx eax, word [eax*8 + 0x4e7cbe]
mov word [esi + 0x40], dx
mov word [esi + 0x42], ax
mov edx, dword [ebp - 0x380]
jb 0x42ccbc
jmp 0x42c8a1
add ecx, 0xffffffd8
mov edx, dword [ebp - 0x1c8]
cmp ecx, 0x20
mov dword [esi + 0x38], edx
jb 0x42ccbc
jmp 0x42c8a1
add ecx, 0xffffffd8
cmp ecx, 0x20
jae 0x42cce1
xor eax, eax
mov edx, 1
shl edx, cl
test dl, 0x25
je 0x42ccd9
mov ecx, dword [esi + 0x40]
mov edx, dword [esi + 0x38]
cmp ecx, edx
jge 0x42ccd6
mov ecx, edx
mov dword [esi + 0x38], ecx
test eax, eax
jne 0x42cc07
movzx eax, byte [esi + 0x50]
mov edx, dword [esi + 0x38]
mov dword [ebp - 0x2c], eax
test byte [ebp - 0x2c], 2
je 0x42cda7
test edx, edx
jle 0x42cd07
movsx eax, word [esi + 0x40]
cmp eax, edx
jle 0x42cd07
lea edx, [eax + 1]
mov dword [esi + 0x38], edx
cmp edx, 0x40
ja 0x42cd1e
mov dword [ebp - 0x24], 0
lea eax, [ebp - 0x3c0]
mov dword [ebp - 0x28], eax
jmp 0x42cd3b
lea eax, [ebp - 0x28]
push eax
push 0
push edx
call fcn.0041d7e0
add esp, 0xc
test eax, eax
jne 0x42d7ef
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], eax
push dword [esi + 0x38]
push 0x20
push eax
call fcn.004c0f40
push dword [ebp - 0x28]
push esi
lea eax, [ebp - 0x1d4]
push eax
call fcn.00442840
add esp, 0x18
test eax, eax
je 0x42cd76
cmp eax, 0x3f
jne 0x42d77e
test byte [edi + 0x16f], 8
jne 0x42cd76
mov dword [esi + 0x10], 0x3f
mov edx, dword [esi + 0x38]
test edx, edx
je 0x42cd92
mov eax, dword [ebp - 0x28]
cmp byte [eax], 0x20
jne 0x42cda7
inc eax
mov dword [ebp - 0x28], eax
mov edx, dword [esi + 0x38]
dec edx
mov dword [esi + 0x38], edx
jne 0x42cd7d
movsx eax, word [esi + 0x40]
test eax, eax
jne 0x42cda7
mov dword [esi + 0x38], 1
dec dword [ebp - 0x28]
mov edx, dword [esi + 0x38]
mov ecx, dword [edi + 0x3c]
mov dword [ebp - 0x30], ecx
mov eax, dword [edi + 0x44]
mov dword [ebp - 0x34], eax
add ecx, edx
cmp eax, ecx
jb 0x42d8f8
movzx eax, byte [esi + 0x50]
test al, 2
je 0x42ce31
cmp dword [esi + 0x38], 0
je 0x42ce0e
mov edx, dword [ebp - 0x28]
mov ecx, dword [edi + 0x3c]
movzx eax, byte [edx]
mov byte [ecx], al
inc dword [edi + 0x3c]
inc dword [ebp - 0x28]
mov eax, dword [esi + 0x38]
dec eax
je 0x42d860
mov dword [esi + 0x38], eax
mov eax, dword [ebp - 0x28]
movsx eax, byte [eax]
cmp eax, 0x20
je 0x42d860
mov edx, dword [edi + 0x3c]
mov byte [edx], al
inc dword [edi + 0x3c]
inc dword [ebp - 0x28]
mov eax, dword [esi + 0x38]
dec eax
jne 0x42cde6
jmp 0x42d860
and eax, 0xfffffffd
mov byte [esi + 0x50], al
mov dword [esi + 0x38], 0
cmp dword [ebp - 0x24], 0
je 0x42ce2c
push dword [ebp - 0x24]
call fcn.0041d8a0
add esp, 4
mov edx, dword [edi + 0x3c]
jmp 0x42ce55
push dword [edi + 0x3c]
push esi
lea eax, [ebp - 0x1d4]
push eax
call fcn.00442840
add esp, 0xc
test eax, eax
jne 0x42d869
mov edx, dword [edi + 0x3c]
add edx, dword [esi + 0x38]
mov dword [edi + 0x3c], edx
mov eax, dword [edi + 0x4c]
cmp edx, eax
ja 0x42ce5e
mov edx, eax
mov dword [edi + 0x4c], edx
jmp 0x42bd29
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42cebd
test byte [edx + 0x44], 2
je 0x42ce98
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42ce8b
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x20], 0
jne 0x42bd69
cmp ebx, 1
jg 0x42bd69
or eax, 0x40
jmp 0x42bd6c
cmp dword [ebp - 0x20], 0
jne 0x42bd5d
cmp ebx, 1
jg 0x42bd5d
or eax, 0x20
jmp 0x42bd69
mov eax, dword [esi + 0xc]
test eax, eax
jle 0x42cf18
inc eax
mov dword [esi + 0xc], eax
xor eax, eax
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x1ec], ebx
xor ecx, ecx
mov ebx, dword [ebp - 0x1c0]
movzx edx, byte [ecx + ebx]
inc ecx
mov byte [eax], dl
mov eax, dword [edi + 0x3c]
inc eax
mov dword [edi + 0x3c], eax
cmp ecx, dword [esi + 0x38]
jl 0x42cf35
mov ebx, dword [ebp - 0x1ec]
jmp 0x42be36
mov edx, ecx
sub edx, dword [ebp - 0x1bc]
cmp edx, 0x200
mov eax, dword [edi + 0xf8]
jge 0x42cf6e
mov edx, 0x200
shr eax, 3
cmp edx, eax
jge 0x42cf77
mov edx, eax
push edx
push edi
call fcn.00438320
add esp, 8
test eax, eax
jne 0x42cf96
mov edx, dword [esi + 0x38]
mov eax, dword [edi + 0x3c]
mov dword [ebp - 0x1b4], edx
jmp 0x42be29
mov eax, dword [edi + 0x18]
test eax, eax
je 0x42cffc
test byte [eax + 0x44], 2
je 0x42cfd2
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42cfc0
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x42
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x42
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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
mov eax, 0x42
push eax
push eax
push 1
call fcn.00418ba0
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 ecx, dword [edi + 0x38]
movsx edx, byte [ecx + 5]
cmp edx, 0x20
je 0x42d045
cmp edx, 0x2b
jne 0x42d037
mov byte [ecx + 5], 0
movzx eax, byte [edi + 0x16d]
and eax, 0xffffffbf
mov byte [edi + 0x16d], al
jmp 0x42be99
mov byte [ecx + 5], 0x24
movzx eax, byte [edi + 0x16d]
jmp 0x42d037
push edi
mov eax, 0x2c
push eax
push eax
push 1
call fcn.00418ba0
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 eax, dword [edi + 0x18]
test eax, eax
je 0x42d0d7
test byte [eax + 0x44], 2
je 0x42d0ad
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42d09b
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x26
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x26
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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
mov eax, 0x26
push eax
push eax
push 1
call fcn.00418ba0
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 edx, dword [edi + 0x18]
test edx, edx
je 0x42d14d
test byte [edx + 0x44], 2
je 0x42d128
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d11b
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
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 eax, dword [ebp + 0xc]
movsx eax, byte [eax]
cmp eax, 1
jne 0x42d380
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x42d189
movzx eax, byte [eax + 0x1e]
test eax, eax
jne 0x42d26d
cmp dword [edi + 0x128], 0
jne 0x42d1a1
cmp dword [ebp - 0x18], 0
je 0x42d1d1
cmp dword [edi + 0x130], 0
je 0x42d1d1
movzx eax, byte [edi + 0x171]
test eax, 0x80
mov dword [edi + 0x128], 0
je 0x42d1c4
and eax, 0x7f
mov byte [edi + 0x171], al
jmp 0x42d1d1
cmp dword [edi + 0x130], 0
jne 0x42d26d
movzx eax, byte [edi + 0x16d]
test al, 0x40
je 0x42d1e9
cmp byte [edi + 0x156], 1
je 0x42d40d
push edi
call fcn.00435300
add esp, 4
test eax, eax
je 0x42d251
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42d3bf
test byte [edx + 0x44], 2
je 0x42d22c
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d21f
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
add dword [edi + 0x98], 1
adc dword [edi + 0x9c], 0
and byte [edi + 0x16f], 0xfb
and byte [edi + 0x171], 0x7f
movzx eax, byte [esi + 0x4f]
test al, 2
je 0x42d2e5
push dword [esi + 4]
and eax, 0xfffffffd
mov byte [esi + 0x4f], al
call fcn.0041d8a0
add esp, 4
test eax, eax
je 0x42d2e5
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42d3d9
test byte [edx + 0x44], 2
je 0x42d2c0
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d2b3
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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 [esi + 0x10]
test edx, edx
je 0x42d34d
mov eax, dword [edi + 0x18]
test eax, eax
je 0x42d3f3
test byte [eax + 0x44], 2
je 0x42d328
mov dword [eax + 0x38], edx
mov edx, dword [edi + 0x18]
mov eax, dword [esi + 0x10]
mov dword [edx + 0x3c], eax
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42d318
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, dword [esi + 0x10]
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edx
movzx eax, byte [edi + 0x16c]
push edx
and eax, 7
push eax
push 0xffffffffffffffff
push edi
call fcn.0043d480
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 + 0x100]
and byte [edi + 0x16c], 0xdc
and byte [edi + 0x16e], 0xf7
call fcn.00431cf0
add esp, 4
mov edx, dword [ebp - 0x14]
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov dword [edx + 4], 0
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x42d39b
xor eax, eax
mov dword [esi + 0xc], 2
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ebx
lea eax, [ebp + 0x10]
push eax
lea edx, [ebp + 0xc]
push edx
call fcn.0043a180
add esp, 0xc
cmp eax, 2
je 0x42d385
cmp eax, 1
jne 0x42bd29
jmp 0x42d176
push edi
push eax
push eax
push 1
call fcn.00418ba0
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 1
call fcn.00418ba0
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 edx
push edx
push 1
call fcn.00418ba0
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 ecx, dword [edi + 0x38]
movsx edx, byte [ecx + 5]
cmp edx, 0x20
je 0x42d437
cmp edx, 0x2b
jne 0x42d429
mov byte [ecx + 5], 0
movzx eax, byte [edi + 0x16d]
and eax, 0xffffffbf
mov byte [edi + 0x16d], al
jmp 0x42d1e9
mov byte [ecx + 5], 0x24
movzx eax, byte [edi + 0x16d]
jmp 0x42d429
push edi
mov eax, 0x69
push eax
push eax
push 1
call fcn.00418ba0
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 eax, dword [ebp + 0xc]
cmp byte [eax], 2
jne 0x42d176
cmp ebx, 2
jge 0x42d176
xor eax, eax
mov dword [esi + 0xc], 2
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
leave
ret
mov ecx, dword [edi + 0x38]
movsx eax, byte [ecx + 5]
cmp eax, 0x20
je 0x42d4c2
cmp eax, 0x2b
jne 0x42d4ae
mov byte [ecx + 5], 0
movzx eax, byte [edi + 0x16d]
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x1e0]
and eax, 0xffffffbf
mov byte [edi + 0x16d], al
jmp 0x42c235
mov byte [ecx + 5], 0x24
movzx eax, byte [edi + 0x16d]
mov dword [ebp - 0x1e0], eax
jmp 0x42d4ae
push edi
mov eax, 0x2c
push eax
push eax
push 1
call fcn.00418ba0
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 eax, dword [edi + 0x18]
test eax, eax
je 0x42d55a
test byte [eax + 0x44], 2
je 0x42d530
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42d51e
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x26
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x26
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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
mov eax, 0x26
push eax
push eax
push 1
call fcn.00418ba0
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 edx, dword [edi + 0x18]
test edx, edx
je 0x42d5d0
test byte [edx + 0x44], 2
je 0x42d5ab
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d59e
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp ebx, 2
jge 0x42c1cd
xor eax, eax
mov dword [esi + 0xc], 2
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp ebx, 2
jl 0x42d176
jmp 0x42c1cd
mov edx, dword [ebp - 0x1c8]
add ecx, 0xffffffd8
shl edx, 3
cmp edx, 0x11
jge 0x42d62d
mov edx, 0x11
mov dword [esi + 0x38], edx
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42cceb
mov edx, dword [ebp - 0x1c8]
add ecx, 0xffffffd8
shl edx, 3
cmp edx, 0x11
jge 0x42d654
mov edx, 0x11
mov dword [esi + 0x38], edx
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
mov eax, dword [ebp - 0x1c8]
add ecx, 0xffffffd8
lea edx, [eax + eax*2]
cmp edx, 7
jge 0x42d67b
mov edx, 7
mov dword [esi + 0x38], edx
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42cceb
cmp dword [ebp - 0x3cc], 0x34
jg 0x42c9cb
mov edx, eax
movzx eax, byte [esi + 0x50]
or eax, 2
movsx edx, word [edx*8 + 0x4e7cb8]
mov dword [ebp - 0x2c], eax
mov byte [esi + 0x50], al
movsx eax, word [esi + 0x40]
test eax, eax
mov dword [esi + 0x38], edx
jne 0x42d6cd
mov eax, dword [ebp - 0x3cc]
movzx eax, word [eax*8 + 0x4e7cbc]
mov word [esi + 0x40], ax
mov eax, dword [ebp - 0x3cc]
add ecx, 0xffffffd8
cmp ecx, 0x20
movzx eax, word [eax*8 + 0x4e7cbe]
mov word [esi + 0x42], ax
jb 0x42ccbc
jmp 0x42cceb
mov eax, dword [ebp - 0x1c8]
add ecx, 0xffffffd8
lea edx, [eax + eax*2]
cmp edx, 7
jge 0x42d706
mov edx, 7
mov dword [esi + 0x38], edx
cmp ecx, 0x20
jb 0x42ccbc
jmp 0x42c8a1
cmp dword [ebp - 0x3c4], 0x34
jg 0x42cbb0
add ecx, 0xffffffd8
cmp ecx, 0x20
movsx edx, word [eax*8 + 0x4e7cb8]
mov dword [ebp - 0x380], edx
mov dword [esi + 0x38], edx
movzx edx, word [eax*8 + 0x4e7cbc]
movzx eax, word [eax*8 + 0x4e7cbe]
mov word [esi + 0x40], dx
mov word [esi + 0x42], ax
mov edx, dword [ebp - 0x380]
jb 0x42ccbc
jmp 0x42c8a1
push edi
push eax
push eax
push 1
call fcn.00418ba0
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 edx, dword [edi + 0x18]
test edx, edx
je 0x42d7d5
test byte [edx + 0x44], 2
je 0x42d7b0
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d7a3
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
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 edx, dword [edi + 0x18]
test edx, edx
je 0x42d846
test byte [edx + 0x44], 2
je 0x42d821
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d814
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
movzx eax, byte [esi + 0x50]
jmp 0x42ce0e
cmp eax, 0x3f
jne 0x42d887
test byte [edi + 0x16f], 8
jne 0x42ce4c
mov dword [esi + 0x10], 0x3f
jmp 0x42ce4c
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42d8de
test byte [edx + 0x44], 2
je 0x42d8b9
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d8ac
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
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 eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x34]
add eax, edx
cmp eax, 0x200
mov edx, dword [edi + 0xf8]
jge 0x42d912
mov eax, 0x200
shr edx, 3
cmp eax, edx
jge 0x42d91b
mov eax, edx
push eax
push edi
call fcn.00438320
add esp, 8
test eax, eax
je 0x42cdbd
mov eax, dword [edi + 0x18]
test eax, eax
je 0x42d993
test byte [eax + 0x44], 2
je 0x42d969
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [edi + 0x18]
mov dword [eax + 0x3c], edx
mov edx, dword [edi + 0x64]
test edx, edx
je 0x42d957
xor eax, eax
mov dword [edx + 4], eax
mov dword [edi + 0x64], eax
mov eax, 0x42
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x42
push eax
movzx edx, byte [edi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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
mov eax, 0x42
push eax
push eax
push 1
call fcn.00418ba0
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 edx, dword [edi + 0x18]
test edx, edx
je 0x42da09
test byte [edx + 0x44], 2
je 0x42d9e4
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42d9d7
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
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 edx, dword [edi + 0x18]
test edx, edx
je 0x42da7a
test byte [edx + 0x44], 2
je 0x42da55
mov dword [edx + 0x38], eax
mov edx, dword [edi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42da48
xor edx, edx
mov dword [ecx + 4], edx
mov dword [edi + 0x64], edx
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 + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push edi
call fcn.0043d480
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.00418ba0
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x20], 0
jne 0x42bdc3
cmp ebx, 1
jg 0x42bdc3
or eax, 0x40
jmp 0x42bdc6
cmp dword [ebp - 0x20], 0
jne 0x42bdb3
cmp ebx, 1
jg 0x42bdb3
movzx eax, byte [esi + 0x4f]
or eax, 0x20
jmp 0x42bdc3
xor eax, eax
mov dword [esi + 0xc], edx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0xc]
test edx, edx
mov ebx, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
lea ecx, [edx + 1]
jne 0x42daf5
mov ecx, 2
xor eax, eax
mov dword [esi + 0xc], ecx
mov esi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
xor eax, eax
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret