Function at 0x44aca0
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebx
mov ebx, esp
and esp, 0xfffffff0
push ebp
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x1d8
mov dword [ebp - 0xe0], edi
mov dword [ebp - 0xe4], esi
mov eax, dword [ebx + 8]
mov esi, dword [eax + 4]
movzx ecx, byte [esi + 0x15d]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1c8], ecx
mov edi, ecx
mov dword [ebp - 0x10], esi
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x144]
push eax
lea edx, [ebp - 0xb8]
and edi, 0x10
shr edi, 4
mov dword [ebp - 0x14], edi
push edx
lea ecx, [ebx + 0x10]
push ecx
lea esi, [ebx + 0xc]
push esi
call fcn.0042dfb0
add esp, 0x10
test eax, eax
jne 0x44dbbc
mov ecx, dword [ebp - 0xb0]
cmp ecx, 2
je 0x44dc42
cmp ecx, 1
je 0x44d3f6
mov eax, dword [ebp - 0x10]
movzx edi, byte [eax + 0x15d]
test edi, 0x20
je 0x44ada4
movsx edx, byte [eax + 0x148]
test edx, edx
jne 0x44ada4
cmp dword [ebp - 0xac], 1
jle 0x44ada4
cmp ecx, 5
jl 0x44ada4
cmp ecx, 0x11
jle 0x44ad83
cmp ecx, 0x19
jl 0x44ada4
cmp ecx, 0x1f
jle 0x44ad83
cmp ecx, 0x32
jl 0x44ad79
cmp ecx, 0x34
jle 0x44ad83
jmp 0x44ada4
cmp ecx, 0x28
jl 0x44ada4
cmp ecx, 0x30
jg 0x44ada4
mov edx, dword [ebp - 0x144]
mov dword [ebp - 0xa4], 1
cmp edx, 5
jne 0x44adb2
mov dword [ebp - 0x90], 1
jmp 0x44adba
mov edx, dword [ebp - 0x144]
xor eax, eax
mov dword [ebp - 0xa4], eax
xor eax, eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
mov eax, dword [ebp - 0xa4]
je 0x44adce
mov eax, 0
cmp edx, 7
mov dword [ebp - 0x94], eax
jl 0x44aefc
cmp edx, 8
jg 0x44aefc
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x158], eax
test eax, eax
je 0x44ae09
mov eax, dword [ebp - 0xb4]
cdq
mov esi, dword [ebp - 0x158]
idiv esi
mov esi, eax
jmp 0x44ae0d
xor eax, eax
xor esi, esi
mov edx, dword [ebp - 0x158]
mov dword [ebp - 0xc8], edx
test esi, esi
jne 0x44ae29
mov dword [ebp - 0xc], 1
jmp 0x44acec
cmp ecx, 0x34
je 0x44ae38
cmp ecx, 0x1c
jl 0x44ae53
cmp ecx, 0x2c
jg 0x44ae53
mov edx, dword [ebp - 0x158]
add edx, edx
mov dword [ebp - 0x158], edx
mov edx, 1
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], edx
jmp 0x44ae5a
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x140]
test eax, eax
jle 0x44ae8b
mov edx, dword [ebp - 0x158]
cmp edx, dword [ebp - 0x130]
jne 0x44ae8f
mov edx, dword [ebp - 0x134]
cmp edx, dword [ebp - 0x138]
jg 0x44ae8f
cmp edx, 1
je 0x44b104
jmp 0x44ae8f
test eax, eax
jle 0x44aeba
xor ecx, ecx
lea edi, [ecx*8]
lea edi, [edi + ecx*4]
mov edx, dword [ebp + edi - 0x134]
mov edi, dword [ebp + edi - 0x130]
mov dword [ebp + ecx*4 - 0x54], edx
mov dword [ebp + ecx*4 - 0x38], edi
mov dword [ebp + ecx*4 - 0x70], edx
inc ecx
cmp ecx, eax
jl 0x44ae91
xor ecx, ecx
test eax, eax
jle 0x44aed6
xor edx, edx
mov edi, dword [ebp + edx*4 - 0x70]
sub edi, dword [ebp + edx*4 - 0x54]
imul edi, dword [ebp + edx*4 - 0x38]
inc edx
add ecx, edi
cmp edx, eax
jl 0x44aec2
add ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xb8], ecx
lea edi, [ebp - 0x70]
lea edx, [ebp - 0x144]
push edx
push edi
push 0
call fcn.0042d6e0
add esp, 0xc
jmp 0x44b017
cmp edx, 6
je 0x44af0a
cmp edx, 5
jne 0x44afd4
cmp dword [ebp - 0xac], 0
mov eax, dword [ebp - 0xb4]
jne 0x44af1e
mov eax, 0
test eax, eax
mov dword [ebp - 0xc8], eax
jne 0x44af34
mov dword [ebp - 0xc], 1
jmp 0x44acec
test edi, 0x10
je 0x44af90
cmp dword [ebp - 0x90], 0
jne 0x44af84
push dword [ebp - 0x10]
lea eax, [ebp - 0xb8]
push eax
call fcn.0042dda0
add esp, 8
test eax, eax
je 0x44af84
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x44af7e
mov eax, dword [ebp - 0xb4]
cdq
mov ecx, dword [ebp - 0xc8]
idiv ecx
mov esi, eax
jmp 0x44af95
xor eax, eax
xor esi, esi
jmp 0x44af95
mov esi, 1
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x44af95
mov esi, 1
mov edx, dword [ebp - 0x10]
test byte [edx + 0x158], 2
je 0x44b024
test esi, esi
jne 0x44afc8
mov eax, edx
movzx edi, byte [eax + 0x15d]
mov dword [eax + 0x118], 1
mov dword [ebp - 0xc], 1
jmp 0x44acec
mov dword [edx + 0x118], 0
jmp 0x44b024
cmp ecx, 0x34
je 0x44afe3
cmp ecx, 0x1c
jl 0x44aff6
cmp ecx, 0x2c
jg 0x44aff6
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xc8], eax
mov esi, 2
jmp 0x44b017
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0xc8], eax
test eax, eax
jne 0x44b012
mov dword [ebp - 0xc], 1
jmp 0x44acec
mov esi, 1
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x118], 0
mov edi, dword [ebp - 0x18]
mov ecx, 1
mov dword [ebp - 0x8c], ecx
xor edx, edx
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x98], edx
cmp dword [ebp - 0xc], 0
je 0x44b244
cmp esi, 1
jle 0x44b0f1
mov eax, dword [ebp - 0x144]
cmp eax, 7
je 0x44b063
cmp eax, 8
jne 0x44b0d2
test edi, edi
je 0x44b07a
mov edi, dword [ebp - 0xac]
add dword [ebp - 0xb8], edi
dec esi
xor eax, eax
xor edi, edi
jmp 0x44b040
cmp dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x140]
je 0x44b08b
mov edi, 1
xor eax, eax
test ecx, ecx
jle 0x44b0af
mov dword [ebp - 0x74], esi
xor edx, edx
mov esi, edx
mov edx, dword [ebp + esi*4 - 0x70]
sub edx, dword [ebp + esi*4 - 0x54]
imul edx, dword [ebp + esi*4 - 0x38]
inc esi
add eax, edx
cmp esi, ecx
jl 0x44b098
mov esi, dword [ebp - 0x74]
add eax, dword [ebp - 0x13c]
mov dword [ebp - 0xb8], eax
lea edx, [ebp - 0x70]
lea eax, [ebp - 0x144]
push eax
push edx
push 0
call fcn.0042d6e0
add esp, 0xc
jmp 0x44b0de
mov eax, dword [ebp - 0xac]
add dword [ebp - 0xb8], eax
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x118], 0
dec esi
jmp 0x44b040
nop
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], edi
movzx edi, byte [eax + 0x15d]
jmp 0x44acec
cmp eax, 1
jg 0x44b1f6
test edi, 0x10
jne 0x44b152
cmp dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xb8], edx
mov dword [ecx + 0x118], 0
je 0x44b226
mov eax, ecx
movzx edi, byte [eax + 0x15d]
jmp 0x44acec
push dword [ebp - 0x10]
lea edx, [ebp - 0xb8]
push edx
call fcn.0042dda0
add esp, 8
test eax, eax
jne 0x44b1a5
cmp dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xb8], edx
mov dword [ecx + 0x118], 0
je 0x44d30d
mov eax, ecx
movzx edi, byte [eax + 0x15d]
jmp 0x44acec
cmp dword [ebp - 0xa4], 0
je 0x44b1eb
cmp dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xb8], edx
mov dword [ecx + 0x118], 0
je 0x44d36c
mov eax, ecx
movzx edi, byte [eax + 0x15d]
jmp 0x44acec
mov eax, dword [ebp - 0x140]
jmp 0x44ae8b
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x1c8], edi
mov edx, 1
lea ecx, [edx*8]
lea esi, [ecx + edx*4]
mov ecx, dword [ebp + esi - 0x134]
cmp ecx, 1
je 0x44d3b2
mov esi, dword [ebp - 0x74]
jmp 0x44ae8f
mov edi, dword [ebp - 0x18]
mov ecx, 1
mov dword [ebp - 0x8c], ecx
xor edx, edx
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x98], edx
mov esi, ecx
cmp dword [ebp - 0x94], 0
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0x88], edx
mov edx, dword [ebp - 0xc8]
mov dword [ebp - 0xa0], edx
je 0x44b4e5
mov edx, dword [ebp - 0xc8]
lea edx, [edx + 3]
and edx, dword [ebp - 0x88]
test dl, 3
jne 0x44b44e
cmp dword [ebp - 0xc8], 4
je 0x44b411
cmp dword [ebp - 0xc8], 8
jne 0x44b307
mov edx, dword [ebp - 0x88]
mov eax, dword [edx]
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x18], edi
mov edi, dword [edx + 4]
mov edx, edi
shr edx, 0x18
mov ecx, edi
mov esi, edi
and ecx, 0xff0000
and esi, 0xff00
shr ecx, 8
or edx, ecx
shl esi, 8
or edx, esi
shl edi, 0x18
or edx, edi
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xd8], edx
mov edx, eax
shr edx, 0x18
mov ecx, eax
and ecx, 0xff0000
shr ecx, 8
or edx, ecx
mov esi, eax
shl eax, 0x18
and esi, 0xff00
shl esi, 8
or edx, esi
or edx, eax
mov esi, dword [ebp - 0x74]
mov dword [ebp - 0xd4], edx
jmp 0x44b4d7
cmp dword [ebp - 0xc8], 0x10
jne 0x44b3e9
mov dword [ebp - 0x74], esi
mov esi, dword [ebp - 0x88]
mov ecx, dword [esi]
mov eax, dword [esi + 4]
mov edx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [ebp - 0x18], edi
mov edi, esi
shr edi, 0x18
mov dword [ebp - 0x170], ecx
mov ecx, esi
and ecx, 0xff0000
shr ecx, 8
or edi, ecx
mov ecx, esi
and ecx, 0xff00
shl ecx, 8
or edi, ecx
shl esi, 0x18
or edi, esi
mov esi, edx
mov dword [ebp - 0xd8], edi
shr esi, 0x18
mov edi, edx
and edi, 0xff0000
shr edi, 8
or esi, edi
mov edi, dword [ebp - 0x18]
mov ecx, edx
and ecx, 0xff00
shl ecx, 8
or esi, ecx
shl edx, 0x18
or esi, edx
mov dword [ebp - 0xd4], esi
mov esi, eax
shr esi, 0x18
mov edx, eax
mov ecx, eax
and edx, 0xff0000
and ecx, 0xff00
shr edx, 8
or esi, edx
shl ecx, 8
or esi, ecx
mov ecx, dword [ebp - 0x170]
shl eax, 0x18
or esi, eax
mov dword [ebp - 0xd0], esi
mov esi, ecx
shr esi, 0x18
mov eax, ecx
and eax, 0xff0000
shr eax, 8
or esi, eax
mov edx, ecx
shl ecx, 0x18
and edx, 0xff00
shl edx, 8
or esi, edx
or esi, ecx
mov dword [ebp - 0xcc], esi
mov esi, dword [ebp - 0x74]
jmp 0x44b4d7
mov edx, dword [ebp - 0x88]
movzx edx, word [edx]
shl edx, 0x10
mov eax, edx
shr eax, 0x18
shr edx, 0x10
movzx edx, dl
shl edx, 8
or eax, edx
mov word [ebp - 0xd8], ax
jmp 0x44b4d7
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x18], edi
mov ecx, eax
shr ecx, 0x18
mov edx, eax
and edx, 0xff0000
shr edx, 8
or ecx, edx
mov edi, eax
shl eax, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, eax
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xd8], ecx
jmp 0x44b4d7
cmp dword [ebp - 0xc8], 1
je 0x44bdc1
mov edx, dword [ebp - 0xc8]
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, 1
test eax, eax
mov dword [ebp - 0x7c], eax
jle 0x44b4d7
mov eax, edx
mov ecx, dword [ebp - 0x88]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
xor edx, edx
add ecx, eax
mov dword [ebp - 0x84], ecx
lea eax, [ebp + eax - 0xd8]
mov dword [ebp - 0x80], eax
xor eax, eax
mov esi, eax
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x88]
movzx edi, byte [edx + eax]
movzx eax, byte [esi + ecx - 1]
mov byte [ebp + edx - 0xd8], al
movzx ecx, byte [esi + ecx - 1]
xor edi, eax
xor ecx, edi
mov edi, dword [ebp - 0x80]
mov eax, dword [ebp - 0x78]
mov byte [eax + edi - 1], cl
dec eax
dec esi
inc edx
cmp edx, dword [ebp - 0x7c]
jl 0x44b497
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x74]
lea edx, [ebp - 0xd8]
mov dword [ebp - 0x88], edx
jmp 0x44b52f
cmp dword [ebp - 0x14], 0
je 0x44b52f
cmp dword [ebp - 0xb0], 0x38
je 0x44b52f
lea edx, [ebp - 0xd8]
push edx
lea edx, [ebp - 0xb8]
push dword [ebp - 0x10]
push dword [ebp - 0xc8]
push edx
call fcn.0042d910
add esp, 0x10
lea edx, [ebp - 0xd8]
mov dword [ebp - 0x88], edx
test eax, eax
je 0x44b52f
push 0
push 0x5f
call fcn.004222a0
add esp, 8
mov edx, dword [ebp - 0x10]
movzx eax, byte [edx + 0x15f]
test al, 0x20
je 0x44b54f
cmp esi, 1
je 0x44bdd5
and eax, 0xffffffdf
mov byte [edx + 0x15f], al
test al, 0x40
jne 0x44b04a
mov edx, dword [edx + 0x128]
mov dword [ebp - 0xbc], edx
cmp edx, 7
je 0x44ba6c
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x44]
mov ecx, dword [edx + 0x3c]
mov edx, dword [ebp - 0xc8]
add edx, ecx
cmp eax, edx
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xdc], ecx
jae 0x44beb6
mov edx, dword [ebp - 0x10]
movsx edx, byte [edx + 0x144]
mov dword [ebp - 0xa8], edx
cmp edx, 5
je 0x44d205
cmp dword [ebp - 0xbc], 0xb
jne 0x44b5ed
cmp dword [ebp - 0xa8], 4
jne 0x44b5d0
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x12c]
mov dword [ebp - 0x1a0], edx
jmp 0x44be91
cmp dword [ebp - 0xa8], 5
jne 0x44b5ed
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x12c]
mov dword [ebp - 0x1a0], edx
jmp 0x44be91
mov edx, ecx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
mov esi, dword [ebp - 0x10]
cmp dword [ebp - 0xa8], 3
je 0x44ce63
mov ecx, dword [ebp - 0xa0]
mov eax, dword [esi + 0xe8]
mov dword [ebp - 0xc4], eax
cmp ecx, 0x200
jge 0x44b624
mov ecx, 0x200
shr eax, 3
cmp eax, ecx
jge 0x44b62d
mov eax, ecx
cmp dword [ebp - 0xbc], 0xb
jne 0x44b668
cmp dword [ebp - 0xa8], 5
je 0x44b648
cmp dword [ebp - 0xa8], 4
jne 0x44b668
mov ecx, dword [ebp - 0xc0]
sub ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x12c]
test edi, edi
jne 0x44b660
mov edi, 0x20000
sub edi, ecx
cmp eax, edi
jl 0x44b668
mov eax, edi
add eax, 0xf
and eax, 0xfffffff0
test byte [esi + 0x15f], 1
je 0x44b69a
cmp dword [ebp - 0xbc], 0xb
jne 0x44b827
cmp dword [ebp - 0xa8], 5
je 0x44b69a
cmp dword [ebp - 0xa8], 4
jne 0x44b827
push eax
push esi
mov edx, dword [esi + 0xdc]
mov ecx, dword [esi + 0xec]
mov edi, dword [esi + 0x40]
mov dword [ebp - 0x148], edx
mov dword [ebp - 0x14c], ecx
mov dword [ebp - 0x150], edi
call fcn.0042d4e0
add esp, 8
test eax, eax
je 0x44b822
cmp dword [esi + 0x128], 0xb
jne 0x44b761
movsx eax, byte [esi + 0x144]
cmp eax, 5
je 0x44b6eb
cmp eax, 4
jne 0x44b761
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44bec8
test byte [eax + 0x44], 2
je 0x44b731
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44b719
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x42
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x42
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx eax, byte [esi + 0x15b]
test eax, 0x80
je 0x44c050
cmp byte [esi + 0x144], 1
je 0x44c050
mov edi, dword [ebp - 0x148]
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x150]
mov dword [esi + 0xdc], edi
mov edi, dword [esi + 0x3c]
sub edi, dword [esi + 0x38]
or byte [esi + 0x15f], 1
mov dword [esi + 0xe8], eax
mov eax, dword [ebp - 0xa0]
mov dword [esi + 0xec], edx
mov dword [esi + 0x40], ecx
lea edx, [eax + edi]
mov dword [esi + 0x108], edx
mov ecx, dword [ebx + 0xc]
cmp byte [ecx], 1
je 0x44c033
mov eax, dword [esi + 0xd4]
call fcn.0044e6b0
mov dword [esi + 0x100], eax
mov dword [esi + 0x104], edx
push edi
push dword [esi + 0x38]
push esi
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44bf90
push dword [ebp - 0xa0]
push dword [ebp - 0x88]
push esi
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44beed
jmp 0x44b86d
mov edx, dword [esi + 0x3c]
jmp 0x44b87b
mov eax, dword [ebp - 0xa0]
mov edi, dword [esi + 0x38]
sub edx, edi
push edx
lea ecx, [eax + edx]
add dword [esi + 0x108], ecx
push edi
push esi
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44cdc0
push dword [ebp - 0xa0]
push dword [ebp - 0x88]
push esi
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44cd1d
mov edx, dword [esi + 0x38]
mov dword [esi + 0x3c], edx
xor eax, eax
mov dword [ebp - 0xa0], eax
mov edi, dword [ebp - 0xa0]
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x128]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], ecx
lea ecx, [edx + edi]
cmp eax, ecx
jb 0x44ccbc
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0x10], esi
mov esi, dword [ebp - 0x74]
cmp dword [ebp - 0xc8], 8
jne 0x44b92a
test byte [ebp - 0xdc], 7
jne 0x44b8e8
test byte [ebp - 0xb8], 7
jne 0x44b8e8
mov dword [ebp - 0x9c], 1
xor edx, edx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x98], edx
jmp 0x44b973
test byte [ebp - 0xdc], 3
jne 0x44b914
test byte [ebp - 0xb8], 3
jne 0x44b914
mov dword [ebp - 0x98], 1
xor edx, edx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x9c], edx
jmp 0x44b973
xor edx, edx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x98], edx
jmp 0x44b973
cmp dword [ebp - 0xc8], 4
jne 0x44b95f
test byte [ebp - 0xdc], 3
jne 0x44b914
test byte [ebp - 0xb8], 3
jne 0x44b914
mov dword [ebp - 0x98], 1
xor edx, edx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x9c], edx
jmp 0x44b973
xor edx, edx
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x9c], edx
cmp dword [ebp - 0xbc], 0xb
jne 0x44b9bd
mov edx, dword [ebp - 0x10]
movsx edx, byte [edx + 0x144]
cmp edx, 5
je 0x44b990
cmp edx, 4
jne 0x44b9bd
mov edx, dword [ebp - 0xc0]
sub edx, dword [ebp - 0xdc]
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0xa0], 0
mov dword [ebp - 0xc0], edx
mov dword [eax + 0x138], edx
jg 0x44c0e7
jmp 0x44b04a
cmp dword [ebp - 0xa0], 4
jne 0x44b9f1
cmp dword [ebp - 0x98], 0
je 0x44c9b7
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0xdc]
mov edx, dword [edx]
mov dword [eax], edx
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
cmp dword [ebp - 0xa0], 8
jne 0x44ba2b
cmp dword [ebp - 0x9c], 0
je 0x44c9b7
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xdc]
mov eax, dword [edx]
mov edx, dword [edx + 4]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
cmp dword [ebp - 0xa0], 1
jne 0x44c9b7
mov edx, dword [ebp - 0x88]
movzx eax, byte [edx]
mov edx, dword [ebp - 0xdc]
mov byte [edx], al
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
mov edx, dword [ebp - 0xdc]
add edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x3c], edx
jmp 0x44b04a
mov edx, dword [ebp - 0x10]
cmp dword [edx + 0x128], 7
jne 0x44b04a
mov eax, edx
mov edx, dword [eax + 0x44]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
mov esi, dword [ebp - 0x10]
mov ecx, edx
sub ecx, eax
cmp ecx, 1
jle 0x44baa1
mov ecx, dword [esi + 0x134]
jmp 0x44bbb4
push esi
call fcn.00427ee0
pop ecx
test eax, eax
jne 0x44bd3e
and byte [esi + 0x160], 0xbf
push 0
push esi
call fcn.00429e20
add esp, 8
test eax, eax
jne 0x44bca7
movsx eax, byte [esi + 0x144]
dec eax
cmp eax, 7
ja case.default.0x44bae2
mov eax, dword [eax*4 + 0x509c14]
jmp eax
mov eax, dword [esi + 0x40]
test eax, eax
je 0x44baf0
mov dword [esi + 0x3c], eax
jmp 0x44baf6
mov eax, dword [esi + 0x38]
mov dword [esi + 0x3c], eax
mov edx, dword [esi + 0xe8]
lea edx, [eax + edx - 1]
mov dword [esi + 0x44], edx
jmp 0x44bb9e
mov edx, dword [esi + 0x40]
mov eax, 1
mov word [ebp - 0x1b4], ax
test edx, edx
je 0x44bc7b
mov byte [edx + 2], al
mov eax, dword [esi + 0x40]
mov byte [eax + 3], 0
mov eax, dword [esi + 0x40]
add eax, 4
mov edx, dword [esi + 0xe8]
mov dword [esi + 0x3c], eax
add edx, eax
mov dword [esi + 0x44], edx
jmp 0x44bb9e
mov eax, dword [esi + 0x40]
test eax, eax
je 0x44bb4b
add eax, 4
jmp 0x44bb51
mov eax, dword [esi + 0x38]
add eax, 4
mov edx, dword [esi + 0xe8]
mov dword [esi + 0x3c], eax
lea edx, [eax + edx - 8]
mov dword [esi + 0x44], edx
jmp 0x44bb9e
mov eax, dword [esi + 0x40]
test eax, eax
je 0x44bb6f
mov dword [esi + 0x3c], eax
jmp 0x44bb75
mov eax, dword [esi + 0x38]
mov dword [esi + 0x3c], eax
mov edx, eax
add edx, dword [esi + 0xe8]
mov dword [esi + 0x44], edx
jmp 0x44bb9e
push 0x9e9
push str.for_wseq.c
push 2
push 8
call fcn.004222a0
add esp, 0x10
mov edx, dword [esi + 0x44]
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x134]
mov edi, edx
sub edi, eax
cmp edi, ecx
jb 0x44bbae
mov edi, ecx
mov dword [esi + 0x138], edi
test ecx, ecx
jge 0x44bbf6
mov byte [esi + 0x14e], 0x81
mov byte [eax], 0x81
mov eax, dword [esi + 0x3c]
movzx ecx, byte [esi + 0x14e]
inc eax
mov dword [esi + 0x3c], eax
xor edx, edx
cmp ecx, 0x81
sete dl
sub ecx, edx
mov edx, dword [esi + 0x44]
mov dword [esi + 0x134], ecx
mov edi, edx
sub edi, eax
cmp edi, ecx
jb 0x44bbf0
mov edi, ecx
mov dword [esi + 0x138], edi
cmp dword [ebp - 0xa0], 0
je 0x44bc99
test ecx, ecx
jne 0x44bc29
movzx edx, byte [esi + 0x14e]
mov dword [esi + 0x134], 0xffffffff
mov byte [eax], dl
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x44]
inc eax
mov dword [esi + 0x3c], eax
jmp 0x44ba8d
mov ecx, dword [ebp - 0xa0]
mov edi, dword [esi + 0x138]
cmp edi, ecx
jb 0x44bc3b
mov edi, ecx
test edi, edi
jbe 0x44ba8d
push edi
push dword [ebp - 0x88]
push eax
call fcn.004b1140
add esp, 0xc
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x44]
add dword [ebp - 0x88], edi
add eax, edi
sub dword [ebp - 0xa0], edi
mov dword [esi + 0x3c], eax
sub dword [esi + 0x138], edi
sub dword [esi + 0x134], edi
jmp 0x44ba8d
mov edi, dword [esi + 0x38]
mov byte [edi + 2], al
movzx eax, byte [ebp - 0x1b3]
mov edx, dword [esi + 0x38]
mov byte [edx + 3], al
mov eax, dword [esi + 0x38]
add eax, 4
jmp 0x44bb2f
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x10], esi
mov esi, dword [ebp - 0x74]
jmp 0x44b04a
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44bd19
test byte [eax + 0x44], 2
je 0x44bce9
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44bcd1
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44bda1
test byte [edx + 0x44], 2
je 0x44bd76
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44bd63
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, dword [ebp - 0x88]
movzx edx, byte [edx]
mov byte [ebp - 0xd8], dl
jmp 0x44b4d7
mov edx, dword [ebx + 0xc]
cmp byte [edx], 1
je 0x44bdee
mov edx, dword [ebp - 0x10]
and eax, 0xffffffdf
mov byte [edx + 0x15f], al
jmp 0x44b54f
mov edx, dword [ebp - 0x10]
and eax, 0xffffffdf
cmp byte [edx + 0x144], 1
je 0x44be08
mov byte [edx + 0x15f], al
jmp 0x44b54f
movzx edx, byte [edx + 0x15b]
mov dword [ebp - 0x1b0], edx
test dl, 8
je 0x44be38
mov edx, dword [ebp - 0x10]
test byte [edx + 0x158], 1
je 0x44be2f
cmp byte [edx + 0x145], 2
je 0x44bdfd
test byte [edx + 0x161], 0x40
jne 0x44bdfd
mov edx, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0x10]
cmp edx, dword [ecx + 0xe8]
jne 0x44be5b
add edx, dword [ecx + 0x3c]
cmp edx, dword [ecx + 0x44]
jbe 0x44be68
test dword [ebp - 0x1b0], 0x80
mov edx, ecx
mov byte [edx + 0x15f], al
jmp 0x44b54f
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x80], ecx
mov ecx, dword [ebp - 0xc8]
mov dword [edx + 0x124], ecx
or eax, 0x40
mov byte [edx + 0x15f], al
jmp 0x44b54f
mov eax, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x38]
test eax, eax
jne 0x44bea6
mov eax, 0x20000
neg edx
add edx, dword [ebp - 0xc0]
cmp edx, eax
jb 0x44b5ed
cmp dword [ebp - 0x8c], 0
jne 0x44b8b0
jmp 0x44b973
push esi
mov eax, 0x42
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0xd8], eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44bf6b
test byte [eax + 0x44], 2
je 0x44bf3b
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44bf23
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0xd8], eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44c00e
test byte [eax + 0x44], 2
je 0x44bfde
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44bfc6
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [ebp - 0x74], 1
jne 0x44b7d5
mov eax, esi
call fcn.0044e710
or byte [esi + 0x15f], 2
jmp 0x44b7ec
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44c0c2
test byte [eax + 0x44], 2
je 0x44c092
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44c07a
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x42
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x42
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x42
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, edx
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0xdc]
mov dword [ebp - 0x74], esi
mov esi, dword [ebp - 0xa0]
test eax, eax
jle 0x44c122
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0x12c]
test ecx, ecx
jne 0x44c111
mov ecx, 0x20000
cmp esi, ecx
jae 0x44c122
cmp dword [ebp - 0x90], 0
je 0x44c293
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x40]
test edx, edx
je 0x44c164
push 0
push dword [eax + 0x38]
sub edi, edx
mov dword [ebp - 0x1a4], edx
push eax
call fcn.00428430
mov edx, dword [ebp - 0x1a4]
add esp, 0xc
test edi, edi
je 0x44c1a6
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + 0x38]
cmp byte [ecx + 0x144], 5
mov dword [ecx + 0x3c], eax
je 0x44c455
jmp 0x44c17b
mov edx, dword [eax + 0x38]
sub edi, edx
je 0x44c1a6
cmp byte [eax + 0x144], 5
mov dword [eax + 0x3c], edx
je 0x44c50d
mov eax, dword [ebx + 0xc]
movsx eax, byte [eax]
mov dword [esp + 0xc], eax
mov ecx, edi
mov eax, dword [ebp - 0x10]
call fcn.0044dc60
test eax, eax
jne 0x44c487
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x44]
sub eax, dword [edx + 0x3c]
mov dword [edx + 0x138], eax
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x12c]
test edx, edx
jne 0x44c1b8
mov edx, 0x20000
cmp esi, edx
jb 0x44c1f9
cmp dword [ebp - 0x90], 0
jne 0x44c21a
cmp byte [eax + 0x144], 5
je 0x44c5c7
mov edi, dword [ebx + 0xc]
mov edx, dword [ebp - 0x88]
movsx ecx, byte [edi]
mov dword [esp + 0xc], ecx
mov ecx, esi
call fcn.0044dc60
mov edi, eax
test edi, edi
jne 0x44c53f
xor eax, eax
xor esi, esi
jmp 0x44c202
cmp dword [ebp - 0x90], 0
jne 0x44c21a
mov edx, dword [ebp - 0x10]
mov edi, dword [edx + 0x3c]
mov eax, dword [edx + 0x138]
mov dword [ebp - 0x8c], 1
jmp 0x44c293
mov ecx, dword [ebp - 0x88]
mov eax, dword [ebp - 0xac]
cmp esi, 0x6400000
mov edx, esi
jle 0x44c235
mov edx, 0x6400000
dec eax
mov dword [ebp - 0x194], 0
lea edi, [ebp - 0x194]
not eax
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0xa0], esi
mov esi, edx
push edi
push 0
push esi
call fcn.0042e2b0
add esp, 0xc
test eax, eax
je 0x44c285
mov dword [ebp - 0x194], 0
sar esi, 1
and esi, dword [ebp - 0x190]
jne 0x44c25c
jmp 0x44c600
cmp dword [ebp - 0x194], 0
je 0x44c25c
jmp 0x44c686
cmp eax, esi
mov edx, eax
jb 0x44c29b
mov edx, esi
mov dword [ebp - 0x174], edx
cmp edx, 8
ja case.0x44c2b1.3
mov ecx, dword [edx*4 + 0x509bf0]
jmp ecx
cmp dword [ebp - 0x9c], 0
je 0x44c2dd
mov edx, dword [ebp - 0x88]
mov ecx, dword [edx]
mov edx, dword [edx + 4]
mov dword [edi], ecx
mov dword [edi + 4], edx
mov edx, dword [ebp - 0x10]
mov edi, dword [edx + 0x3c]
mov eax, dword [edx + 0x138]
jmp case.0x44c2b1.0
cmp dword [ebp - 0x98], 0
je 0x44c30a
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x10]
mov ecx, dword [edx]
mov dword [edi], ecx
mov ecx, dword [eax + 0x3c]
mov edi, dword [edx + 4]
mov dword [ecx + 4], edi
mov edi, dword [eax + 0x3c]
mov eax, dword [eax + 0x138]
jmp case.0x44c2b1.0
mov edx, dword [ebp - 0x88]
movzx eax, byte [edx]
mov byte [edi], al
mov eax, dword [ebp - 0x10]
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 1]
mov byte [edi + 1], cl
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 2]
mov byte [edi + 2], cl
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 3]
mov byte [edi + 3], cl
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 4]
mov byte [edi + 4], cl
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 5]
mov byte [edi + 5], cl
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 6]
mov byte [edi + 6], cl
mov ecx, dword [eax + 0x3c]
movzx edx, byte [edx + 7]
mov byte [ecx + 7], dl
mov edi, dword [eax + 0x3c]
mov eax, dword [eax + 0x138]
jmp case.0x44c2b1.0
cmp dword [ebp - 0x98], 0
je 0x44c390
mov edx, dword [ebp - 0x88]
mov ecx, dword [edx]
mov edx, dword [ebp - 0x10]
mov dword [edi], ecx
mov edi, dword [edx + 0x3c]
mov eax, dword [edx + 0x138]
jmp case.0x44c2b1.0
mov edx, dword [ebp - 0x88]
movzx eax, byte [edx]
mov byte [edi], al
mov eax, dword [ebp - 0x10]
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 1]
mov byte [edi + 1], cl
mov edi, dword [eax + 0x3c]
movzx ecx, byte [edx + 2]
mov byte [edi + 2], cl
mov ecx, dword [eax + 0x3c]
movzx edx, byte [edx + 3]
mov byte [ecx + 3], dl
mov edi, dword [eax + 0x3c]
mov eax, dword [eax + 0x138]
jmp case.0x44c2b1.0
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x10]
movzx eax, byte [ecx]
mov byte [edi], al
mov edi, dword [edx + 0x3c]
movzx ecx, byte [ecx + 1]
mov byte [edi + 1], cl
mov edi, dword [edx + 0x3c]
mov eax, dword [edx + 0x138]
jmp case.0x44c2b1.0
mov edx, dword [ebp - 0x88]
movzx ecx, byte [edx]
mov edx, dword [ebp - 0x10]
mov byte [edi], cl
mov edi, dword [edx + 0x3c]
mov eax, dword [edx + 0x138]
jmp case.0x44c2b1.0
push dword [ebp - 0x174]
push dword [ebp - 0x88]
push edi
call fcn.004b1140
add esp, 0xc
mov edx, dword [ebp - 0x10]
mov edi, dword [edx + 0x3c]
mov eax, dword [edx + 0x138]
mov ecx, dword [ebp - 0x174]
mov edx, dword [ebp - 0x10]
add dword [ebp - 0x88], ecx
sub esi, ecx
sub eax, ecx
mov dword [edx + 0x138], eax
add edi, ecx
mov dword [edx + 0x3c], edi
test esi, esi
jg 0x44c0fb
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x74]
jmp 0x44b04a
push edi
push edx
push dword [ebp - 0x10]
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44c46e
xor eax, eax
jmp 0x44c18f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0xd8], eax
mov eax, 0x26
jmp 0x44c18f
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44c4ed
test byte [edx + 0x44], 2
je 0x44c4c2
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44c4af
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push edi
push edx
push dword [ebp - 0x10]
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44c526
xor eax, eax
jmp 0x44c18f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0xd8], eax
mov eax, 0x26
jmp 0x44c18f
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44c5a7
test byte [edx + 0x44], 2
je 0x44c57c
mov dword [edx + 0x38], edi
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], edi
mov edx, dword [esi + 0x64]
test edx, edx
je 0x44c567
xor eax, eax
mov dword [edx + 4], eax
mov dword [esi + 0x64], eax
mov esi, dword [ebp - 0xe4]
mov eax, edi
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push edi
push edi
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push edi
push edi
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push dword [ebp - 0x88]
push dword [ebp - 0x10]
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44c5e7
xor eax, eax
xor edi, edi
jmp 0x44c1eb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0xd8], eax
mov edi, 0x26
jmp 0x44c1eb
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44c666
test byte [edx + 0x44], 2
je 0x44c63b
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44c628
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, esi
mov dword [ebp - 0x19c], edx
xor eax, eax
xor edi, edi
mov edx, dword [ebp - 0x194]
mov esi, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x19c]
mov dword [ebp - 0x180], esi
mov esi, dword [ebp - 0xa0]
sub esi, edi
cmp ecx, esi
jge 0x44c6b8
mov esi, ecx
mov ecx, dword [ebp - 0xac]
cmp ecx, 2
je 0x44c971
cmp ecx, 4
je 0x44c888
cmp ecx, 8
jne 0x44c777
mov ecx, esi
test esi, esi
jle 0x44c8f9
mov dword [ebp - 0x18c], ecx
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x1a8], edi
mov eax, dword [ecx]
mov esi, dword [ecx + 4]
mov dword [ebp - 0x180], ecx
mov ecx, esi
shr ecx, 0x18
mov edi, esi
and edi, 0xff0000
shr edi, 8
or ecx, edi
mov edi, esi
shl esi, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, esi
mov dword [edx], ecx
mov edi, eax
shr edi, 0x18
mov ecx, eax
and ecx, 0xff0000
shr ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x180]
mov esi, eax
and esi, 0xff00
shl esi, 8
or edi, esi
shl eax, 0x18
or edi, eax
mov eax, dword [ebp - 0x18c]
mov dword [edx + 4], edi
add eax, 0xfffffff8
add edx, 8
add ecx, 8
mov dword [ebp - 0x18c], eax
test eax, eax
jg 0x44c6fb
jmp 0x44c8e7
cmp ecx, 0x10
jne 0x44c8f9
mov ecx, esi
test esi, esi
jle 0x44c8f9
mov dword [ebp - 0x188], ecx
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x1a8], edi
mov eax, dword [ebp - 0x180]
mov edi, dword [eax]
mov esi, dword [eax + 4]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x17c], edi
mov edi, ecx
mov dword [ebp - 0x178], esi
and edi, 0xff0000
mov esi, dword [eax + 8]
mov eax, ecx
shr eax, 0x18
shr edi, 8
or eax, edi
mov edi, ecx
and edi, 0xff00
shl edi, 8
or eax, edi
shl ecx, 0x18
or eax, ecx
mov dword [edx], eax
mov edi, esi
shr edi, 0x18
mov ecx, esi
and ecx, 0xff0000
shr ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x178]
mov eax, esi
shl esi, 0x18
and eax, 0xff00
shl eax, 8
or edi, eax
or edi, esi
mov dword [edx + 4], edi
mov edi, ecx
shr edi, 0x18
mov esi, ecx
and esi, 0xff0000
shr esi, 8
or edi, esi
mov esi, dword [ebp - 0x17c]
mov eax, ecx
and eax, 0xff00
shl eax, 8
or edi, eax
shl ecx, 0x18
or edi, ecx
mov dword [edx + 8], edi
mov edi, esi
shr edi, 0x18
mov eax, esi
mov ecx, esi
and eax, 0xff0000
and ecx, 0xff00
shr eax, 8
or edi, eax
shl ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x180]
shl esi, 0x18
or edi, esi
mov dword [edx + 0xc], edi
add ecx, 0xfffffff0
mov dword [ebp - 0x188], ecx
add edx, 0x10
add eax, 0x10
test ecx, ecx
mov dword [ebp - 0x180], eax
jg 0x44c79c
jmp 0x44c8e7
mov eax, esi
test esi, esi
jle 0x44c8f9
mov dword [ebp - 0x184], edx
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x1a8], edi
mov esi, dword [edx]
mov ecx, esi
shr ecx, 0x18
mov edi, esi
add eax, 0xfffffffc
add edx, 4
and edi, 0xff0000
shr edi, 8
or ecx, edi
mov edi, esi
shl esi, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, esi
mov esi, dword [ebp - 0x184]
mov dword [esi], ecx
add esi, 4
mov dword [ebp - 0x184], esi
test eax, eax
jg 0x44c8a6
mov esi, dword [ebp - 0x1ac]
mov edi, dword [ebp - 0x1a8]
mov edx, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x10]
cmp byte [ecx + 0x144], 5
je 0x44c945
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebp - 0x10]
movsx ecx, byte [ecx]
mov dword [esp + 0xc], ecx
mov ecx, esi
call fcn.0044dc60
test eax, eax
jne 0x44c931
add dword [ebp - 0x198], esi
add edi, esi
cmp edi, dword [ebp - 0xa0]
jl 0x44c692
mov edx, dword [ebp - 0x194]
mov edi, eax
push edx
call fcn.0042e370
pop ecx
jmp 0x44c1eb
push esi
push edx
push dword [ebp - 0x10]
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44c95b
xor eax, eax
jmp 0x44c919
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0xd8], eax
mov eax, 0x26
jmp 0x44c919
mov eax, esi
test esi, esi
jle 0x44c8f9
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x1a8], edi
movzx edi, word [ecx]
shl edi, 0x10
mov esi, edi
shr esi, 0x18
shr edi, 0x10
and edi, 0xff
shl edi, 8
or esi, edi
mov word [edx], si
add eax, 0xfffffffe
add edx, 2
add ecx, 2
test eax, eax
jg 0x44c989
jmp 0x44c8e7
cmp dword [ebp - 0x90], 0
jne 0x44c9eb
push dword [ebp - 0xa0]
push dword [ebp - 0x88]
push dword [ebp - 0xdc]
call fcn.004b1140
add esp, 0xc
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
mov edx, dword [ebp - 0xac]
cmp edx, 2
je 0x44cc5c
cmp edx, 4
je 0x44cbea
cmp edx, 8
jne 0x44cac0
mov edx, dword [ebp - 0xa0]
test edx, edx
jle 0x44ba55
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x88]
mov dword [ebp - 0x1c0], edx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
mov dword [ebp - 0x88], ecx
mov ecx, esi
shr ecx, 0x18
mov edi, esi
and edi, 0xff0000
shr edi, 8
or ecx, edi
mov edi, esi
shl esi, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, esi
mov dword [eax], ecx
mov edi, edx
shr edi, 0x18
mov ecx, edx
and ecx, 0xff0000
shr ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x88]
mov esi, edx
and esi, 0xff00
shl esi, 8
or edi, esi
shl edx, 0x18
or edi, edx
mov edx, dword [ebp - 0x1c0]
mov dword [eax + 4], edi
add edx, 0xfffffff8
add eax, 8
add ecx, 8
mov dword [ebp - 0x1c0], edx
test edx, edx
jg 0x44ca32
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x74]
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
cmp edx, 0x10
jne 0x44ba55
mov edx, dword [ebp - 0xa0]
test edx, edx
jle 0x44ba55
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x1c4], edx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
mov esi, dword [ebp - 0xdc]
mov edi, dword [eax]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x1bc], edi
mov edi, edx
mov dword [ebp - 0x1b8], ecx
and edi, 0xff0000
mov ecx, dword [eax + 8]
mov eax, edx
shr eax, 0x18
shr edi, 8
or eax, edi
mov edi, edx
shl edx, 0x18
and edi, 0xff00
shl edi, 8
or eax, edi
or eax, edx
mov dword [esi], eax
mov edi, ecx
shr edi, 0x18
mov eax, ecx
and eax, 0xff0000
shr eax, 8
or edi, eax
mov edx, ecx
and edx, 0xff00
shl edx, 8
or edi, edx
shl ecx, 0x18
or edi, ecx
mov edx, dword [ebp - 0x1b8]
mov dword [esi + 4], edi
mov edi, edx
shr edi, 0x18
mov eax, edx
mov ecx, edx
and eax, 0xff0000
and ecx, 0xff00
shr eax, 8
or edi, eax
shl ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x1bc]
shl edx, 0x18
or edi, edx
mov dword [esi + 8], edi
mov edi, ecx
shr edi, 0x18
mov eax, ecx
and eax, 0xff0000
shr eax, 8
or edi, eax
mov edx, ecx
shl ecx, 0x18
mov eax, dword [ebp - 0x88]
and edx, 0xff00
shl edx, 8
or edi, edx
or edi, ecx
mov edx, dword [ebp - 0x1c4]
mov dword [esi + 0xc], edi
add edx, 0xfffffff0
mov dword [ebp - 0x1c4], edx
add esi, 0x10
add eax, 0x10
test edx, edx
jg 0x44caef
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x74]
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
mov eax, dword [ebp - 0xa0]
test eax, eax
jle 0x44ba55
mov edx, dword [ebp - 0x88]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
mov esi, dword [edx]
mov ecx, esi
shr ecx, 0x18
mov edi, esi
add eax, 0xfffffffc
add edx, 4
and edi, 0xff0000
shr edi, 8
or ecx, edi
mov edi, esi
shl esi, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, esi
mov esi, dword [ebp - 0xdc]
mov dword [esi], ecx
add esi, 4
mov dword [ebp - 0xdc], esi
test eax, eax
jg 0x44cc04
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x74]
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
mov eax, dword [ebp - 0xa0]
test eax, eax
jle 0x44ba55
mov edx, dword [ebp - 0x88]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x74], esi
mov esi, dword [ebp - 0xdc]
movzx edi, word [edx]
shl edi, 0x10
mov ecx, edi
shr ecx, 0x18
shr edi, 0x10
and edi, 0xff
shl edi, 8
or ecx, edi
mov word [esi], cx
add eax, 0xfffffffe
add esi, 2
add edx, 2
test eax, eax
jg 0x44cc7c
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x74]
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44ba55
cmp dword [ebp - 0xbc], 0xb
je 0x44ccd7
movsx eax, byte [esi + 0x144]
mov dword [ebp - 0xa8], eax
jmp 0x44b5f8
movsx eax, byte [esi + 0x144]
mov dword [ebp - 0xa8], eax
cmp eax, 4
je 0x44ccf6
cmp dword [ebp - 0xa8], 5
jne 0x44b5f8
mov ecx, dword [esi + 0x12c]
mov eax, dword [esi + 0x38]
test ecx, ecx
jne 0x44cd08
mov ecx, 0x20000
neg eax
add eax, dword [ebp - 0xc0]
cmp eax, ecx
jb 0x44b5f8
jmp 0x44b8a1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0xd8], eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44cd9b
test byte [eax + 0x44], 2
je 0x44cd6b
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44cd53
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0xd8], eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44ce3e
test byte [eax + 0x44], 2
je 0x44ce0e
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44cdf6
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
sub dword [ebp - 0xc0], edx
cmp dword [ebp - 0x90], 0
je 0x44d0c1
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0xac]
lea ecx, [eax - 1]
not ecx
and dword [ebp - 0xc0], ecx
cmp eax, 2
je 0x44d11f
cmp eax, 4
je 0x44d05f
cmp eax, 8
jne 0x44cf4d
mov eax, dword [ebp - 0xc0]
test eax, eax
jle 0x44d0d9
mov ecx, dword [ebp - 0x168]
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x10], esi
mov eax, dword [ecx]
mov esi, dword [ecx + 4]
mov dword [ebp - 0x168], ecx
mov ecx, esi
shr ecx, 0x18
mov edi, esi
and edi, 0xff0000
shr edi, 8
or ecx, edi
mov edi, esi
shl esi, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, esi
mov dword [edx], ecx
mov edi, eax
shr edi, 0x18
mov ecx, eax
and ecx, 0xff0000
shr ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x168]
mov esi, eax
and esi, 0xff00
shl esi, 8
or edi, esi
shl eax, 0x18
or edi, eax
mov eax, dword [ebp - 0x16c]
mov dword [edx + 4], edi
add eax, 0xfffffff8
add edx, 8
add ecx, 8
mov dword [ebp - 0x16c], eax
test eax, eax
jg 0x44cecb
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x3c]
jmp 0x44d0d9
cmp eax, 0x10
jne 0x44d0d9
mov eax, dword [ebp - 0xc0]
test eax, eax
jle 0x44d0d9
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x10], esi
mov eax, dword [ebp - 0x168]
mov edi, dword [eax]
mov esi, dword [eax + 4]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x160], edi
mov edi, ecx
mov dword [ebp - 0x15c], esi
and edi, 0xff0000
mov esi, dword [eax + 8]
mov eax, ecx
shr eax, 0x18
shr edi, 8
or eax, edi
mov edi, ecx
and edi, 0xff00
shl edi, 8
or eax, edi
shl ecx, 0x18
or eax, ecx
mov dword [edx], eax
mov edi, esi
shr edi, 0x18
mov ecx, esi
and ecx, 0xff0000
shr ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x15c]
mov eax, esi
shl esi, 0x18
and eax, 0xff00
shl eax, 8
or edi, eax
or edi, esi
mov dword [edx + 4], edi
mov edi, ecx
shr edi, 0x18
mov esi, ecx
and esi, 0xff0000
shr esi, 8
or edi, esi
mov esi, dword [ebp - 0x160]
mov eax, ecx
and eax, 0xff00
shl eax, 8
or edi, eax
shl ecx, 0x18
or edi, ecx
mov dword [edx + 8], edi
mov edi, esi
shr edi, 0x18
mov eax, esi
mov ecx, esi
and eax, 0xff0000
and ecx, 0xff00
shr eax, 8
or edi, eax
shl ecx, 8
or edi, ecx
mov ecx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x168]
shl esi, 0x18
or edi, esi
mov dword [edx + 0xc], edi
add ecx, 0xfffffff0
mov dword [ebp - 0x164], ecx
add edx, 0x10
add eax, 0x10
test ecx, ecx
mov dword [ebp - 0x168], eax
jg 0x44cf6d
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x3c]
jmp 0x44d0d9
mov eax, dword [ebp - 0xc0]
test eax, eax
jle 0x44d0d9
mov dword [ebp - 0xdc], edx
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0x10], esi
mov esi, dword [edx]
mov ecx, esi
shr ecx, 0x18
mov edi, esi
add eax, 0xfffffffc
add edx, 4
and edi, 0xff0000
shr edi, 8
or ecx, edi
mov edi, esi
shl esi, 0x18
and edi, 0xff00
shl edi, 8
or ecx, edi
or ecx, esi
mov esi, dword [ebp - 0xdc]
mov dword [esi], ecx
add esi, 4
mov dword [ebp - 0xdc], esi
test eax, eax
jg 0x44d078
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x3c]
jmp 0x44d0d9
push dword [ebp - 0xc0]
push dword [ebp - 0x88]
push edx
call fcn.004b1140
add esp, 0xc
mov edx, dword [esi + 0x3c]
mov eax, dword [ebp - 0xc0]
sub dword [ebp - 0xa0], eax
add edx, eax
mov dword [esi + 0x3c], edx
add dword [ebp - 0x88], eax
push esi
call fcn.00427ee0
pop ecx
test eax, eax
jne 0x44d182
mov edx, dword [esi + 0x40]
test edx, edx
je 0x44d166
xor eax, eax
mov byte [edx + 2], al
mov edx, dword [esi + 0x40]
mov byte [edx + 3], al
mov edx, dword [esi + 0x40]
add edx, 4
mov dword [esi + 0x3c], edx
jmp 0x44b87b
mov edi, dword [ebp - 0xc0]
test edi, edi
jle 0x44d0d9
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x10], esi
movzx esi, word [eax]
shl esi, 0x10
mov ecx, esi
shr ecx, 0x18
shr esi, 0x10
and esi, 0xff
shl esi, 8
or ecx, esi
mov word [edx], cx
add edi, 0xfffffffe
add edx, 2
add eax, 2
test edi, edi
jg 0x44d132
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x3c]
jmp 0x44d0d9
mov edx, dword [esi + 0x38]
xor eax, eax
mov byte [edx + 2], al
mov ecx, dword [esi + 0x38]
mov byte [ecx + 3], al
mov edx, dword [esi + 0x38]
add edx, 4
mov dword [esi + 0x3c], edx
jmp 0x44b87b
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44d1e5
test byte [edx + 0x44], 2
je 0x44d1ba
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44d1a7
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x12c]
mov dword [ebp - 0x1a0], edx
test edx, edx
jne 0x44d21d
mov edx, 0x20000
cmp edx, dword [ebp - 0xc8]
jbe 0x44d237
cmp dword [ebp - 0xbc], 0xb
jne 0x44b5ed
jmp 0x44be91
mov edx, ecx
mov eax, dword [ebp - 0x10]
or byte [eax + 0x15d], 4
mov dword [eax + 0x40], edx
push 0
push dword [eax + 0x38]
push eax
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
je 0x44d273
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0x44]
mov dword [ebp - 0xc0], edx
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0xdc], edx
jmp 0x44b990
mov esi, dword [ebp - 0x10]
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44d2e8
test byte [eax + 0x44], 2
je 0x44d2b8
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44d2a0
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, 1
xor edx, edx
cmp dword [ebp - 0x94], 0
mov edi, dword [ebp - 0xb8]
mov dword [ebp - 0x88], edi
mov edi, eax
mov dword [ebp - 0xa0], edi
mov eax, edx
mov esi, ecx
mov dword [ebp - 0x14], eax
jne 0x44d352
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x8c], ecx
jmp 0x44b52f
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x8c], ecx
jmp 0x44b269
mov edi, dword [ebp - 0xb8]
mov dword [ebp - 0x88], edi
mov edi, eax
mov ecx, 1
xor edx, edx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0xa0], edi
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x9c], edx
mov esi, ecx
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x8c], ecx
jmp 0x44b52f
cmp ecx, dword [ebp + esi - 0x138]
jg 0x44b21e
mov ecx, dword [ebp + esi - 0x144]
imul ecx, dword [ebp + esi - 0x13c]
cmp ecx, dword [ebp + esi - 0x130]
je 0x44d3df
mov esi, dword [ebp - 0x74]
jmp 0x44ae8f
inc edx
cmp edx, eax
jl 0x44b204
mov esi, dword [ebp - 0x74]
mov edi, dword [ebp - 0x1c8]
jmp 0x44b10d
mov esi, dword [ebp - 0x10]
cmp dword [esi + 0x118], 0
je 0x44d4b2
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x3c]
mov dword [esi + 0x118], 0
test eax, eax
je 0x44d424
sub edx, eax
jne 0x44d4b2
jmp 0x44d42f
mov eax, dword [esi + 0x38]
sub edx, eax
jne 0x44d4b2
test byte [esi + 0x15f], 1
je 0x44d5b1
mov eax, esi
call fcn.0044de80
test eax, eax
je 0x44d595
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44d656
test byte [edx + 0x44], 2
je 0x44d487
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44d474
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [esi + 0x128], 7
jne 0x44d4fa
mov edx, dword [esi + 0x134]
mov ecx, dword [esi + 0x3c]
test edx, edx
jl 0x44d8a3
neg edx
add edx, 0xffffff80
mov byte [esi + 0x14e], dl
mov byte [ecx], dl
mov edi, dword [esi + 0x3c]
movzx eax, byte [esi + 0x14e]
mov edx, dword [esi + 0x38]
inc edi
mov dword [esi + 0x3c], edi
sub edi, eax
sub edi, edx
add edi, 0xfffffffe
js 0x44d676
mov byte [edx + edi], al
cmp byte [esi + 0x144], 3
je 0x44db70
movzx eax, byte [esi + 0x15f]
test al, 1
jne 0x44d523
test al, 0x40
jne 0x44db24
push esi
call fcn.00427ee0
pop ecx
jmp 0x44d52a
mov eax, esi
call fcn.0044de80
test eax, eax
je 0x44d595
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44db30
test byte [edx + 0x44], 2
je 0x44d56a
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44d557
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
add dword [esi + 0x90], 1
adc dword [esi + 0x94], 0
and byte [esi + 0x15f], 0xfb
and byte [esi + 0x160], 0xbf
push dword [esi + 0xf0]
and byte [esi + 0x15c], 0xdc
and byte [esi + 0x15e], 0xf7
call fcn.00425d90
pop ecx
test eax, eax
je 0x44d636
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44db50
test byte [edx + 0x44], 2
je 0x44d60b
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44d5f8
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, dword [ebp - 0x154]
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov dword [edx + 4], 0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov dword [esp + 4], edi
mov eax, edi
cdq
mov eax, dword [esi + 0xd4]
mov dword [esp + 8], edx
mov edx, 1
call fcn.0044e850
inc eax
inc edx
or eax, edx
jne 0x44d70d
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44d859
test byte [eax + 0x44], 2
je 0x44d6dd
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44d6c5
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 1
lea eax, [esi + 0x14e]
push eax
push esi
call fcn.00428430
add esp, 0xc
cmp eax, 0xffffffff
jne 0x44d79a
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44d87e
test byte [eax + 0x44], 2
je 0x44d76a
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44d752
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
neg edi
dec edi
mov dword [esp + 4], edi
mov eax, edi
cdq
mov eax, dword [esi + 0xd4]
mov dword [esp + 8], edx
mov edx, 1
call fcn.0044e850
inc eax
inc edx
or eax, edx
jne 0x44d4fa
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44d834
test byte [eax + 0x44], 2
je 0x44d804
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44d7ec
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [esi + 0x44]
sub eax, ecx
cmp eax, 1
jg 0x44da80
push esi
call fcn.00427ee0
pop ecx
test eax, eax
je 0x44d923
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44dac1
test byte [edx + 0x44], 2
je 0x44d8f8
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44d8e5
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
and byte [esi + 0x160], 0xbf
push 0
push esi
call fcn.00429e20
add esp, 8
test eax, eax
je 0x44d9af
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44dae1
test byte [eax + 0x44], 2
je 0x44d97f
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x44d967
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov eax, 0x26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movzx edx, byte [esi + 0x15c]
and edx, 7
mov eax, 0x26
push eax
push eax
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movsx eax, byte [esi + 0x144]
dec eax
cmp eax, 7
ja case.default.0x44d9c7
mov eax, dword [eax*4 + 0x509c34]
jmp eax
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x44d9d5
mov dword [esi + 0x3c], ecx
jmp 0x44d9db
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x3c], ecx
mov eax, dword [esi + 0xe8]
lea edx, [ecx + eax - 1]
mov dword [esi + 0x44], edx
jmp 0x44da80
mov edx, dword [esi + 0x40]
mov eax, 1
mov word [ebp - 0x1c8], ax
test edx, edx
je 0x44db06
mov byte [edx + 2], al
mov eax, dword [esi + 0x40]
mov byte [eax + 3], 0
mov ecx, dword [esi + 0x40]
add ecx, 4
mov eax, dword [esi + 0xe8]
mov dword [esi + 0x3c], ecx
add eax, ecx
mov dword [esi + 0x44], eax
jmp 0x44da80
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x44da30
add ecx, 4
jmp 0x44da36
mov ecx, dword [esi + 0x38]
add ecx, 4
mov eax, dword [esi + 0xe8]
mov dword [esi + 0x3c], ecx
lea edx, [ecx + eax - 8]
mov dword [esi + 0x44], edx
jmp 0x44da80
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x44da54
mov dword [esi + 0x3c], ecx
jmp 0x44da5a
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x3c], ecx
mov eax, ecx
add eax, dword [esi + 0xe8]
mov dword [esi + 0x44], eax
jmp 0x44da80
push 0xadd
push str.for_wseq.c
push 2
push 8
call fcn.004222a0
add esp, 0x10
mov ecx, dword [esi + 0x3c]
mov byte [esi + 0x14e], 0x81
mov byte [ecx], 0x81
mov ecx, dword [esi + 0x3c]
movzx edx, byte [esi + 0x14e]
mov edi, dword [esi + 0x44]
inc ecx
mov dword [esi + 0x3c], ecx
xor eax, eax
cmp edx, 0x81
sete al
sub edi, ecx
sub edx, eax
mov dword [esi + 0x134], edx
cmp edi, edx
jb 0x44dab6
mov edi, edx
mov dword [esi + 0x138], edi
jmp 0x44d4cc
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x26
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edi, dword [esi + 0x38]
mov byte [edi + 2], al
movzx eax, byte [ebp - 0x1c7]
mov edx, dword [esi + 0x38]
mov byte [edx + 3], al
mov ecx, dword [esi + 0x38]
add ecx, 4
jmp 0x44da14
mov eax, esi
call fcn.0044e8b0
jmp 0x44d52a
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 0
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x44db98
movzx eax, byte [ecx + 2]
movzx edx, byte [ecx + 3]
shl edx, 8
or eax, edx
or eax, 2
mov byte [ecx + 2], al
mov ecx, dword [esi + 0x40]
shr eax, 8
mov byte [ecx + 3], al
jmp 0x44d507
mov ecx, dword [esi + 0x38]
movzx eax, byte [ecx + 2]
movzx edx, byte [ecx + 3]
shl edx, 8
or eax, edx
or eax, 2
mov byte [ecx + 2], al
mov edi, dword [esi + 0x38]
shr eax, 8
mov byte [edi + 3], al
jmp 0x44d507
mov esi, dword [ebp - 0x10]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44dc22
test byte [edx + 0x44], 2
je 0x44dbf7
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x44dbe4
xor edx, edx
mov dword [ecx + 4], edx
mov dword [esi + 0x64], edx
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
push eax
movzx edx, byte [esi + 0x15c]
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0042d020
add esp, 0x14
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00420200
add esp, 0x10
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov esi, dword [ebp - 0xe4]
mov edi, dword [ebp - 0xe0]
xor eax, eax
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret