Function at 0x4292a0
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x78]
movzx ecx, byte [esi + ecx + 0x228]
add eax, 0x4d26f498
xor eax, ecx
mov dword [esi + 0x6c8], eax
mov eax, dword [esi + 0x6c8]
add al, 8
mov ecx, dword [esi + 0x78]
mov byte [esi + ecx + 0x228], al
inc dword [esi + 0x78]
mov eax, dword [esi + 0x78]
cmp eax, 6
jb 0x41d350
mov eax, dword [esi + 0x228]
mov ecx, dword [0x44f8ac]
test ecx, ecx
je 0x41d3d3
xor edx, edx
mov edi, dword [0x44f8b0]
cmp dword [edi + edx*8], 0xcecd21fd
je 0x41d3b0
inc edx
cmp ecx, edx
jne 0x41d3a0
jmp 0x41d3d3
mov ecx, dword [edi + edx*8 + 4]
cmp ecx, eax
je 0x41d3d3
lea eax, [esi + 0x5c]
push eax
push 0
push 0
push 5
push 4
push dword [0x44f8b4]
push ecx
call fcn.00440ec0
add esp, 0x1c
cmp eax, 0xc0000004
jne 0x41d483
push dword [esi + 0x5c]
call fcn.0043e070
add esp, 4
mov dword [esi + 0x14], eax
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x228], 0x6c6d6e3a
mov word [esi + 0x22c], 0
mov dword [esi + 0x78], 0
mov eax, dword [esi + 0x78]
cmp eax, 5
ja 0x41d458
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0x78]
mov edx, dword [esi + 0x78]
movzx edx, byte [esi + edx + 0x228]
add eax, 0x4d26f498
xor eax, edx
mov dword [esi + 0x6c8], eax
mov eax, dword [esi + 0x6c8]
add al, 8
mov edx, dword [esi + 0x78]
mov byte [esi + edx + 0x228], al
inc dword [esi + 0x78]
mov eax, dword [esi + 0x78]
cmp eax, 6
jb 0x41d420
mov eax, dword [esi + 0x228]
mov edx, dword [0x44f8ac]
test edx, edx
je 0x41d4c7
xor edi, edi
mov ebx, dword [0x44f8b0]
cmp dword [ebx + edi*8], 0xcecd21fd
je 0x41d4a3
inc edi
cmp edx, edi
jne 0x41d470
mov ebx, dword [esi + 0x18]
jmp 0x41d4c7
mov dword [esi + 0xc], 0
mov dword [esi + 4], 4
mov dword [esi + 0x10], 0
mov dword [esi], 0
jmp 0x41d838
mov edx, dword [ebx + edi*8 + 4]
cmp edx, eax
mov ebx, dword [esi + 0x18]
je 0x41d4c7
push 0
push ecx
push dword [esi + 0x14]
push 5
push 4
push dword [0x44f8b4]
push edx
call fcn.00440ec0
add esp, 0x1c
test eax, eax
js 0x41d812
mov ecx, dword [esi + 0x14]
mov eax, dword [ecx]
mov dword [esi + 0xc], 0
mov dword [esi + 4], 4
mov edx, ecx
mov dword [esi + 0x10], 0
mov dword [esi], 0
jmp 0x41d512
call fcn.0043e5b0
mov edx, dword [esi + 8]
mov eax, dword [edx]
test eax, eax
je 0x41d82d
mov ecx, dword [edx + eax + 0x3c]
add eax, edx
mov dword [esi + 8], eax
xor eax, eax
nop
nop
nop
movzx edx, word [ecx + eax]
movzx edi, word [esi + eax + 0xa94]
test dx, dx
je 0x41d539
add eax, 2
cmp dx, di
je 0x41d520
cmp dx, di
jne 0x41d505
mov ecx, dword [esi + 8]
mov eax, dword [ecx + 0x44]
mov dword [esi + 0x38], eax
mov eax, dword [ecx + 0xdc]
mov dword [esi + 0x3c], eax
lea ecx, [esi + 0x30]
push 0x410
call fcn.0043e410
test eax, eax
lea edi, [esi + 0x228]
js 0x41d505
lea ecx, [esi + 0x30]
call fcn.0043ead0
lea ecx, [esi + 0x30]
cmp eax, 2
jne 0x41d7fb
push 0
push 0x30
lea eax, [esi + 0x1f8]
push eax
push 0
call fcn.0043e8d0
lea ecx, [esi + 0x30]
test eax, eax
js 0x41d7f4
push 0
push 0
push 0x28
lea eax, [esi + 0x6c8]
push eax
push dword [esi + 0x204]
push dword [esi + 0x200]
call fcn.0043ee50
lea ecx, [esi + 0x30]
test eax, eax
js 0x41d7f4
push 0
push 0
push 0x80
push edi
push dword [esi + 0x6ec]
push dword [esi + 0x6e8]
call fcn.0043ee50
test eax, eax
js 0x41d7f1
invalid
add al, byte [eax]
add byte [eax], al
or eax, 0xf000002
mov bh, 0x86
lcall 0x7fe8, 0x50000002
jg 0x41d5f9
add al, byte [eax]
add esp, 4
mov edi, eax
add byte [eax], al
movzx eax, word [esi + 0x29a]
push eax
call fcn.0043e070
jg 0x41d5f9
add al, byte [eax]
jg 0x41d5f9
add al, byte [eax]
add esp, 4
mov edi, eax
add al, 0x89
invalid
movzx eax, word [esi + 0x29a]
lea ecx, [esi + 0x30]
dec esi
invalid
lcall 0x304e, 0x8d000002
dec esi
xor byte [edx], ch
push 0
push 0
push eax
push edi
push dword [esi + 0x2a4]
push dword [esi + 0x2a0]
call fcn.0043ee50
test eax, eax
js 0x41d7f1
mov eax, edi
movzx edi, word [esi + 0x668]
mov dword [esi + 0x28], eax
mov dword [esi + 4], eax
test di, di
je 0x41d684
lea ecx, [esi + 0x668]
mov eax, dword [esi + 0x28]
mov ebx, eax
mov dword [esi + 4], eax
jmp 0x41d658
movzx edi, word [ecx]
test di, di
je 0x41d684
movzx eax, word [ebx]
test ax, ax
je 0x41d7bd
add ebx, 2
add ecx, 2
mov edx, dword [esi + 4]
add edx, 2
cmp ax, di
je 0x41d67a
mov dword [esi + 4], edx
mov ebx, edx
je 0x41d650
lea ecx, [esi + 0x668]
jmp 0x41d650
cmp dword [esi + 4], 0
je 0x41d7bd
lea ecx, [esi + 0x30]
push 0
push 0
push 0x58
lea eax, [esi + 0x1a0]
push eax
push dword [esi + 0x6e4]
push dword [esi + 0x6e0]
call fcn.0043ee50
test eax, eax
mov ebx, dword [esi + 0x18]
js 0x41d7e5
mov eax, dword [esi + 0x6e0]
mov ecx, dword [esi + 0x6e4]
add eax, 0x20
mov dword [esi + 4], eax
adc ecx, 0
mov dword [esi + 0x2c], ecx
mov eax, dword [esi + 0x1b0]
mov edx, dword [esi + 0x1b4]
mov dword [esi + 0x7c], edx
mov dword [esi + 0x78], eax
jmp 0x41d71f
movzx eax, cx
movzx ecx, dx
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
cmp ecx, edx
je 0x41d7c2
push edi
call fcn.0043e120
add esp, 4
mov eax, dword [esi + 0x78]
mov edx, dword [esi + 0x7c]
mov ecx, edx
xor ecx, dword [esi + 0x2c]
mov edi, eax
xor edi, dword [esi + 4]
or edi, ecx
je 0x41d7e5
lea ecx, [esi + 0x30]
push 0
push 0
push 0x120
lea edi, [esi + 0x78]
push edi
push edx
push eax
call fcn.0043ee50
test eax, eax
js 0x41d7e5
movzx eax, word [esi + 0xd2]
push eax
call fcn.0043e070
add esp, 4
mov edi, eax
movzx eax, word [esi + 0xd2]
lea ecx, [esi + 0x30]
push 0
push 0
push eax
push edi
push dword [esi + 0xdc]
push dword [esi + 0xd8]
call fcn.0043ee50
test eax, eax
js 0x41d6fe
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, word [esi + eax + 0xa54]
lea edx, [ecx - 0x41]
cmp dx, 0x1a
jae 0x41d794
or ecx, 0x20
movzx edx, word [edi + eax]
lea ebx, [edx - 0x41]
cmp bx, 0x1a
jae 0x41d7a4
or edx, 0x20
test cx, cx
mov ebx, dword [esi + 0x18]
je 0x41d6e6
add eax, 2
cmp cx, dx
je 0x41d780
jmp 0x41d6e6
mov ebx, dword [esi + 0x18]
jmp 0x41d7f1
mov eax, dword [esi + 0xa8]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xac]
mov dword [esi], eax
mov eax, dword [esi + 0xb8]
mov dword [esi + 0xc], eax
push edi
call fcn.0043e120
add esp, 4
mov eax, dword [esi + 0x28]
push eax
call fcn.0043e120
add esp, 4
lea ecx, [esi + 0x30]
mov dword [esi + 4], 8
mov eax, dword [esi + 0x10]
or eax, dword [esi]
je 0x41d500
cmp dword [esi + 0xc], 0
je 0x41d500
jmp 0x41d82d
mov dword [esi + 0xc], 0
mov dword [esi + 4], 4
mov dword [esi + 0x10], 0
mov dword [esi], 0
push dword [esi + 0x14]
call fcn.0043e120
add esp, 4
lea edi, [esi + 0x30]
mov ecx, edi
call fcn.0043e5a0
test al, al
je 0x41dd89
mov eax, dword [esi + 0x10]
mov dword [esi + 0x78], eax
mov eax, dword [esi]
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x80], eax
mov dword [esi + 0x228], 0x595e5f5c
mov dword [esi + 0x22c], 0x555a5b58
mov dword [esi + 0x230], 0x51565754
mov dword [esi + 0x234], 0x6d528a89
mov dword [esi + 0x238], 0x696e6f6c
mov dword [esi + 0x23c], 0x656a6b68
mov dword [esi + 0x240], 0xb8bfbebd
mov dword [esi + 0x244], 0x7d626360
mov dword [esi + 0x248], 0x797e7f7c
mov dword [esi + 0x24c], 0x757a7b78
mov dword [esi + 0x250], 0x71767774
mov dword [esi + 0x254], 0x8d727370
mov dword [esi + 0x258], 0x898e8f8c
mov dword [esi + 0x25c], 0x858a5288
mov dword [esi + 0x260], 0x8186875d
mov dword [esi + 0x264], 0x445b5a59
mov dword [esi + 0x268], 0x999e9f9c
mov dword [esi + 0x26c], 0x959a9b98
mov dword [esi + 0x270], 0x48969794
mov dword [esi + 0x274], 0xad4b4a49
mov dword [esi + 0x278], 0x707776ac
mov dword [esi + 0x27c], 0xa5aaaba8
mov dword [esi + 0x280], 0xa1a6a7a4
mov dword [esi + 0x284], 0xbda2a3a0
mov dword [esi + 0x288], 0xb9bebfbc
mov dword [esi + 0x28c], 0xb5babbb8
mov dword [esi + 0x290], 0xb1b6b7b4
mov dword [esi + 0x294], 0xcdb2b3b0
mov dword [esi + 0x298], 0xc9cecfcc
mov dword [esi + 0x29c], 0xc5cacbc8
mov dword [esi + 0x2a0], 0xc1c6c7c4
mov dword [esi + 0x2a4], 0xdd1b1a19
mov dword [esi + 0x2a8], 0xd9dedfdc
mov dword [esi + 0x2ac], 0xd5dadbd8
mov dword [esi + 0x2b0], 0x80f0ed4
mov dword [esi + 0x2b4], 0xedd2d3d0
mov byte [esi + 0x2b8], 0x74
mov dword [esi + 0x2bc], 0
mov dword [esi + 0x2b9], 0
mov dword [esi + 0x1a0], 0
mov eax, dword [esi + 0x1a0]
cmp eax, 0x97
ja 0x41da54
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0x1a0]
mov ecx, dword [esi + 0x1a0]
movzx ecx, byte [esi + ecx + 0x228]
mov edx, eax
xor edx, 0x426adbd1
and eax, 0xc26adbd1
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esi + 0x6c8], eax
mov eax, dword [esi + 0x6c8]
add al, 0xeb
mov ecx, dword [esi + 0x1a0]
mov byte [esi + ecx + 0x228], al
inc dword [esi + 0x1a0]
mov eax, dword [esi + 0x1a0]
cmp eax, 0x98
jb 0x41da00
mov dword [esi + 0x6c8], 0xe82e3232
mov dword [esi + 0x6cc], 0xb8eb4d80
mov dword [esi + 0x6d0], 0x97bce828
mov dword [esi + 0x6d4], 0x88898d8c
mov dword [esi + 0x6d8], 0x7f0a8af5
mov dword [esi + 0x6dc], 0x9b93fc3c
mov dword [esi + 0x6e0], 0x7f7e8180
mov dword [esi + 0x6e4], 0xc36a04c4
mov dword [esi + 0x6e8], 0xd4ae4507
mov dword [esi + 0x6ec], 0x47464ad6
mov dword [esi + 0x6f0], 0x5b5a4544
mov dword [esi + 0x6f4], 0x5f5e5958
mov dword [esi + 0x6f8], 0x18dec2c2
mov dword [esi + 0x6fc], 0x1ada6570
mov dword [esi + 0x700], 0xa229d960
mov dword [esi + 0x704], 0x5b5a5d5c
mov dword [esi + 0x708], 0xef7688e0
mov dword [esi + 0x70c], 0x838ee92d
mov dword [esi + 0x710], 0x4fc724e8
mov dword [esi + 0x714], 0x934a4d4c
mov dword [esi + 0x718], 0x47464950
mov dword [esi + 0x71c], 0xf935fd4c
mov dword [esi + 0x720], 0x8d49f9a0
mov dword [esi + 0x724], 0x514d85e4
mov dword [esi + 0x728], 0x37363888
mov dword [esi + 0x72c], 0xef8e4080
mov dword [esi + 0x730], 0xdf5788e8
mov dword [esi + 0x734], 0x9b501694
mov dword [esi + 0x738], 0x27262929
mov dword [esi + 0x73c], 0x9b222524
mov dword [esi + 0x740], 0xf21d2759
mov dword [esi + 0x744], 0xe61a1d1c
mov dword [esi + 0x748], 0xcba26ea0
mov dword [esi + 0x74c], 0x32c3adc4
mov dword [esi + 0x750], 0xf0e1108
mov dword [esi + 0x754], 0x74b27d08
mov byte [esi + 0x758], 8
mov word [esi + 0x75d], 0
mov dword [esi + 0x759], 0
mov dword [esi + 0x1f8], 0
mov eax, dword [esi + 0x1f8]
cmp eax, 0x96
ja case.0x429361.9
nop
nop
nop
mov eax, dword [esi + 0x1f8]
mov ecx, dword [esi + 0x1f8]
movzx ecx, byte [esi + ecx + 0x6c8]
enter 6, 0
enter 6, 0
mov edx, eax
xor edx, 0xc080bee6
and eax, 0xc080bee6
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esi + 0x1a0], eax
mov eax, dword [esi + 0x1a0]
add al, 0x82
mov ecx, dword [esi + 0x1f8]
mov byte [esi + ecx + 0x6c8], al
inc dword [esi + 0x1f8]
mov eax, dword [esi + 0x1f8]
cmp eax, 0x97
jb 0x41dbf0
lea edx, [esi + 0x6c8]
lea ecx, [esi + 0x78]
lea eax, [esi + 0x228]
push eax
push 0x90
push edx
push edi
call fcn.0043fba0
mov dword [esi + 0x1fc], edx
mov dword [esi + 0x1f8], eax
or eax, edx
je 0x41dd89
add byte [eax], al
add byte [eax], al
lea eax, [esi + 0x1f8]
lea ecx, [esi + 0x78]
push 0
push 8
push eax
push edi
call fcn.0043fba0
mov dword [esi + 0x19c], edx
mov dword [esi + 0x198], eax
or eax, edx
je 0x41dd89
lea eax, [esi + 0x198]
lea edx, [esi + 0x1a0]
lea ecx, [esi + 0x30]
push 0
push 8
push eax
push edx
call fcn.0043f060
mov eax, dword [esi + 0x1a0]
cmp eax, dword [esi + 0x1a4]
je 0x41dd89
call fcn.00405a20
mov dword [esi + 0x14], eax
push eax
call fcn.004053e0
add esp, 4
mov dword [esi + 0xc], eax
mov ebx, dword [esi + 0x1a0]
mov eax, dword [esi + 0x1a4]
mov dword [esi + 8], eax
cmp ebx, eax
je 0x41ddf0
xor eax, eax
add dword [esi + 4], 0x28
setb al
mov dword [esi + 0x10], eax
mov dword [esi], 0
lea ecx, [esi + 0x30]
lea edi, [esi + 0x6c8]
jmp 0x41dd23
xor eax, eax
mov ecx, dword [esi]
or cl, al
mov dword [esi], ecx
add ebx, 8
cmp ebx, dword [esi + 8]
lea ecx, [esi + 0x30]
je 0x41dda0
mov eax, dword [ebx]
add eax, dword [esi + 4]
mov edx, dword [ebx + 4]
adc edx, dword [esi + 0x10]
push 0
push 0
push 0x18
push edi
push edx
push eax
call fcn.0043ee50
test eax, eax
js 0x41dd10
mov eax, dword [esi + 0x6d0]
mov edx, dword [esi + 0x6d4]
mov ecx, eax
or ecx, edx
je 0x41dd10
lea ecx, [esi + 0x30]
push 0
push 0
push 0x40
lea edi, [esi + 0x228]
push edi
push edx
push eax
call fcn.0043ee50
test eax, eax
js 0x41dd7f
lea ecx, [esi + 0x30]
mov edx, edi
push dword [esi + 0xc]
call fcn.00420030
add esp, 4
jmp 0x41dd81
xor eax, eax
lea edi, [esi + 0x6c8]
jmp 0x41dd12
mov dword [esi], 0
mov edi, dword [esi + 0x24]
lea ecx, [esi + 0x30]
call fcn.0043e5b0
jmp dword [0x44a42c]
mov ebx, dword [esi]
test bl, bl
je 0x41ddf0
push dword [esi + 0xc]
call fcn.00405820
add esp, 4
test eax, eax
mov edi, dword [esi + 0x24]
mov ebx, dword [esi + 0x18]
je 0x41df3a
xor ecx, ecx
mov ebx, dword [ebp + 0x10]
cmp word [ebx + ecx], 0
lea ecx, [ecx + 2]
jne 0x41ddc4
lea eax, [ebx + ecx]
add eax, 0xfffffffe
and eax, dword [esi + 0x4c]
add ecx, ebx
mov edx, 1
sub edx, ecx
and edx, ebx
sub eax, edx
cmp eax, 0xffffffed
jge 0x41ddfb
mov eax, 0xffffffff
jmp 0x41ddfe
mov dword [esi], 0
jmp 0x41df34
add eax, 0x12
push eax
call fcn.0040d6d0
add esp, 4
mov dword [esi + 8], eax
mov dword [esi + 0x228], 0x17e419cb
mov dword [esi + 0x22c], 0x13991589
mov dword [esi + 0x230], 0xf8211c2
mov dword [esi + 0x234], 0xb860d84
mov dword [esi + 0x238], 0x908
mov byte [esi + 0x23c], 0
mov dword [esi + 0x44], 0
mov eax, dword [esi + 0x44]
cmp eax, 0x14
ja 0x41dea7
mov ecx, dword [esi + 0x44]
mov eax, dword [esi + 0x44]
movzx eax, byte [esi + eax + 0x228]
mov edx, ecx
xor edx, 0x742b5446
mov edi, ecx
xor edi, 0xbd4abb9
or ecx, 0x742b5446
and ecx, edi
lea ecx, [edx + ecx*2]
lea edx, [ecx + eax]
and ecx, eax
add ecx, ecx
sub edx, ecx
mov dword [esi + 0x6c8], edx
mov eax, dword [esi + 0x6c8]
add al, 0xa2
mov ecx, dword [esi + 0x44]
mov byte [esi + ecx + 0x228], al
inc dword [esi + 0x44]
mov eax, dword [esi + 0x44]
cmp eax, 0x15
jb 0x41de52
movzx ecx, word [ebx]
mov eax, dword [esi + 8]
test cx, cx
je 0x41dec9
lea edx, [ebx + 2]
mov eax, dword [esi + 8]
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41deb8
mov word [eax], 0
movzx ecx, word [esi + 0x228]
test cx, cx
je 0x41def1
lea edx, [esi + 0x22a]
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41dee0
mov word [eax], 0
mov ebx, 0xffffffff
push dword [esi + 0x14]
call fcn.00406650
add esp, 4
mov edi, eax
cmp byte [edi + ebx + 1], 0
lea ebx, [ebx + 1]
jne 0x41df08
mov ecx, dword [ebp + 8]
push ebx
push edi
mov ebx, dword [esi + 8]
push ebx
call fcn.0040e1a0
mov dword [esi], eax
push edi
call fcn.004066e0
add esp, 4
push ebx
call fcn.0040d6e0
add esp, 4
mov edi, dword [esi + 0x24]
mov ebx, dword [esi + 0x18]
push dword [esi + 0x14]
call fcn.00405860
add esp, 4
mov eax, dword [esi]
and al, 1
mov dword [esi], eax
mov eax, dword [esi + 0x1a0]
test eax, eax
je 0x41dd92
cmp eax, dword [esi + 0x1a4]
je 0x41dd92
push eax
call fcn.0040d6e0
add esp, 4
jmp 0x41dd92
and eax, 0x44a4a4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push eax
mov ebx, eax
call fcn.004056d0
add esp, 4
xor ecx, ecx
cmp edi, eax
setb cl
jmp dword [ecx*4 + 0x44a454]
mov dword [esi + 0xc], eax
push eax
push ebx
call fcn.004056e0
xor ebx, ebx
add esp, 8
nop
add edi, 2
cmp byte [eax + ebx], 0
lea ebx, [ebx + 1]
jne 0x41dfd0
test ebx, ebx
mov dword [esi + 8], eax
or byte [ecx + 0xa79105e], cl
or byte [ecx + 0xa79105e], cl
mov eax, 0xffffffff
jmp 0x41dff3
lea eax, [edi + 2]
push eax
call fcn.0040d6d0
add esp, 4
mov dword [esi + 0x228], 0
add edi, eax
mov edx, eax
cmp eax, edi
mov dword [esi + 4], eax
mov ecx, dword [esi + 8]
jae 0x41e070
mov edx, dword [esi + 0x10]
lea ebx, [ecx + edx]
dec ebx
mov edx, eax
mov dword [esi + 0x1c], ebx
cmp ecx, ebx
jae 0x41e070
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ecx], 0
je 0x41e070
lea eax, [esi + 0x228]
push eax
push dword [esi + 0x1c]
push ecx
mov ebx, ecx
mov dword [esi + 8], edx
call fcn.00412020
mov edx, dword [esi + 8]
add esp, 0xc
movzx ecx, word [esi + 0x228]
mov word [edx], cx
add edx, 2
cmp edx, edi
jae 0x41e070
add ebx, eax
cmp ebx, dword [esi + 0x1c]
mov ecx, ebx
jb 0x41e030
nop
nop
nop
nop
nop
nop
mov word [edx], 0
mov eax, dword [esi + 0x10]
add eax, dword [esi + 0x40]
jns 0x41e090
mov eax, 0xffffffff
jmp 0x41e092
add eax, eax
push eax
call fcn.0040d6d0
add esp, 4
mov edi, eax
mov eax, dword [esi + 0x20]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x41e0c1
mov edx, dword [esi + 0x14]
mov eax, edi
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41e0b0
mov word [eax], 0x5c
add eax, 2
mov edx, dword [esi + 4]
movzx ecx, word [edx]
test cx, cx
mov ebx, dword [ebp + 0x10]
je 0x41e0f1
add edx, 2
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41e0e0
mov word [eax], 0
push dword [esi + 0x64]
push edi
call fcn.00444410
add esp, 8
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44a45c]
inc edx
add al, 0x56
invalid
add byte [eax], al
mov byte [edx + 0x12], 0
jmp 0x41e70b
mov eax, 0xffffffff
push eax
call fcn.0040d6d0
add esp, 4
mov edx, dword [esi + 0x54]
mov dword [edx], 0xc955cb9d
leave
leave
mov dword [edx + 4], 0xc594c756
mov dword [edx + 8], 0xc14ac348
mov dword [edx + 0xc], 0xfdfeff4c
mov word [edi], 0
mov byte [edi + 2], 0
jmp dword [0x44a3f4]
lea eax, [ebx - 2]
mov ecx, 1
sub ecx, ebx
lea edi, [edx + 0x10]
xor edx, edx
nop
nop
nop
nop
nop
nop
cmp word [ebx + edx], 0
lea edx, [edx + 2]
jne 0x41e720
add eax, edx
sub ecx, edx
and eax, dword [esi + 0x4c]
and ecx, ebx
sub eax, ecx
cmp eax, 0xffffffef
jl 0x41e6d0
add eax, 0x10
jmp 0x41e6d5
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x460
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x5c], 0xc15ac759
mov dword [esp + 0x60], 0xcd61c36f
mov dword [esp + 0x64], 0xc918cf5b
mov dword [esp + 0x68], 0xb552cb67
mov dword [esp + 0x6c], 0xb1b6b71b
mov word [esp + 0x70], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0x15
ja 0x42934e
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x5c]
mov edx, eax
xor edx, 0xff7d30b1
and eax, 0xff7d30b1
lea eax, [edx + eax*2]
xor eax, ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
add al, 0x8b
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x5c], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x16
jb 0x429310
lea ebx, [esp + 0x5c]
lea ecx, [esp + 0x48]
push ebx
call fcn.0043e1d0
shr eax, 0x1f
xor ecx, ecx
jmp dword [eax*4 + 0x44b690]