Function at 0x41a540
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
push esi
push edi
sub esp, 8
mov dword [ebp - 0x34], 0xdcdd
mov ecx, 0xe961
mov dword [ebp - 0x3c], 0x1380e
mov edi, 0x12ee0
mov dword [ebp - 0x40], 0x156cd
mov edx, 0x2089
mov dword [ebp - 0x4c], 0x98d8
push 0x8c05
mov esi, 0x1259b
mov dword [ebp - 0x50], edi
mov dword [ebp - 8], 0x3403
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], 0x12ee2
mov dword [ebp - 0x14], 0x8fdb
call fcn.00403690
add esp, 0xc
mov dword [ebp - 0x38], eax
push 0x5ad4
push ecx
push 0x3ae9
push ecx
push 0x7a
push 0x11df5
push ecx
call fcn.004013a0
add esp, 0x1c
mov dword [ebp - 0x24], 0x17aed
mov edx, 0x4237
push 0x1110a
push 0xd6a1
push ecx
push 0x13fdb
sub esp, 8
push 0x2aac
push ecx
call fcn.00404100
add esp, 0x10
mov dword [ebp - 0x30], eax
push 0xc466
sub esp, 0xc
call fcn.00404b60
and dword [ebp - 0x30], esi
mov ebx, eax
mov eax, 0x18089
mov dword [ebp - 0x44], 0x1b3ee
mov dword [ebp - 0xc], eax
add esp, 0x20
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x20], 0xa9e0
mov dword [ebp - 0x2c], 0xff65
mov dword [ebp - 0x48], 0x18058
cmp eax, 0x401d
jle 0x41a67a
add ebx, 0xdcdd
mov dword [ebp - 0x18], 0xa3da
xor eax, 0x7a84
mov dword [ebp - 8], 0xafe1
mov edi, ebx
mov dword [ebp - 0x24], eax
mov eax, 0x1eee5
mov dword [ebp - 0x4c], 0xbbdd
or edi, 0x278d4
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x48], 0xbb59
mov dword [ebp - 0x40], 0x9af0
mov eax, dword [ebp - 0x4c]
sub esp, 0x10
add eax, 0x384d
push 0xdfc
push eax
call fcn.00403510
mov dword [ebp - 0x28], eax
add esp, 0x18
add eax, 0xfffe8af9
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x10], eax
mov ecx, 0xa9e0
test eax, eax
jle 0x41a718
mov edx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x4c]
imul eax, eax, 0xa0a2
add eax, 0x8fdb
mov dword [ebp - 0x14], eax
mov eax, 0xe961
nop word [eax + eax]
sub dword [ebp - 0x3c], edi
and ecx, 0x2e24
and edx, dword [ebp - 0x3c]
xor eax, 0xb771
add ebx, dword [ebp - 0x24]
xor edx, 0x1259b
or ebx, dword [ebp - 0x38]
xor ecx, 0x1869c
inc dword [ebp - 0x38]
or dword [ebp - 0x44], 0x13ffd
mov dword [ebp - 0x3c], edx
xor edx, edx
cmp dword [ebp - 0x38], esi
jl 0x41a6d0
mov edi, dword [ebp - 0x50]
mov esi, 0x1259b
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 8]
add ecx, 0xffff754b
lea edx, [edx - 0x3113]
call fcn.00402840
sub esp, 0x10
mov dword [ebp - 0x38], 0x24bb
call fcn.00402bf0
mov edx, 0x17768
mov dword [ebp - 4], eax
call fcn.00401650
mov eax, dword [ebp - 0x18]
add esp, 0x10
add eax, 0x32c7
mov dword [ebp - 0x4c], 0x15b40
mov edx, 0x4237
push 0x1110a
push eax
mov eax, dword [ebp - 0x48]
push ecx
push 0x13fdb
sub esp, 8
add eax, 0xffff6f53
push eax
push ecx
call fcn.00404100
add esp, 4
mov dword [ebp - 0x18], eax
call fcn.00404c70
mov ecx, dword [ebp - 0x3c]
add esp, 0x14
add ecx, 0xffff137c
mov dword [ebp - 0x10], eax
push ecx
push ecx
call fcn.00401980
add esp, 0x10
mov dword [ebp - 0x50], eax
lea edx, [eax - 0x38c5]
test edx, edx
jle 0x41a7e7
mov ecx, dword [ebp - 0x24]
mov eax, edx
imul eax, dword [ebp - 0x44]
add eax, 0xff65
mov dword [ebp - 0x2c], eax
imul eax, edx, 0xffff1dc9
add dword [ebp - 0x30], eax
mov eax, dword [ebp - 8]
nop dword [eax + eax]
xor eax, 0x95fb
and ecx, 0x8eff
inc eax
sub edx, 1
jne 0x41a7d0
mov dword [ebp - 0x24], ecx
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
lea eax, [edx + edx]
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 0x2c]
mov eax, esi
sub dword [ebp - 4], edx
sub eax, ebx
and ebx, dword [ebp - 4]
add ecx, eax
mov eax, dword [ebp - 0x34]
inc edx
sub eax, dword [ebp - 0x28]
and dword [ebp - 0x24], ebx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x54]
sub dword [ebp - 8], eax
cmp dword [ebp - 0x30], 0x188c
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x2c], edx
jle 0x41a8b4
mov edx, dword [ebp - 0x4c]
sub ebx, 0x5877
or edx, dword [ebp - 0x48]
and eax, dword [ebp - 0x44]
and edi, dword [ebp - 0x3c]
mov dword [ebp - 0x4c], edx
mov edx, dword [ebp - 0x10]
and edx, dword [ebp - 0x18]
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 0x14]
xor edx, dword [ebp - 8]
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0xc], eax
cmp edx, 0x13101
jae 0x41a8b4
sub dword [ebp - 0x10], ebx
and esi, 0x15def
add dword [ebp - 0x48], edx
cmp dword [ebp - 8], 0x971f
je 0x41a8b4
or dword [ebp - 0x38], eax
or ebx, 0x11289
add dword [ebp - 0x40], 0x66e7
and eax, 0x22c0
cmp dword [ebp - 4], 0x928d
mov dword [ebp - 0xc], eax
jge 0x41a8b4
or ecx, dword [ebp - 0x24]
xor eax, 0x1a78
sub dword [ebp - 8], 0x82c8
xor dword [ebp - 4], 0x3e35
sub dword [ebp - 0x30], 0x16d11
inc ecx
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x2c], 0x2bf65
mov edx, dword [ebp - 0x20]
jl 0x41a7f3
mov dword [ebp - 0x48], ebx
nop word [eax + eax]
mov ebx, dword [ebp - 0x14]
xor eax, esi
add dword [ebp - 0x28], 0x17883
xor edi, ebx
xor edi, dword [ebp - 4]
mov dword [ebp - 0x54], ebx
sub ebx, dword [ebp - 8]
cmp dword [ebp - 0x50], 0xb491
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x14], ebx
jle 0x41a937
mov eax, dword [ebp - 0x2c]
add dword [ebp - 0x28], eax
xor dword [ebp - 0x34], esi
cmp dword [ebp - 4], 0xecee
mov eax, dword [ebp - 0xc]
jne 0x41a937
mov edx, dword [ebp - 0x34]
xor ecx, 0x397f
mov eax, dword [ebp - 0x54]
xor esi, edx
mov dword [ebp - 0x14], eax
or esi, 0x10bee
mov eax, dword [ebp - 0x40]
and dword [ebp - 0x24], eax
add edx, 0x13d55
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x34], edx
mov edx, dword [ebp - 0x20]
inc dword [ebp - 0x10]
and edi, 0x17713
mov ebx, dword [ebp - 0x40]
sub ebx, dword [ebp - 0x44]
sub edx, dword [ebp - 0x10]
and dword [ebp - 0x14], 0x1482a
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x20], edx
cmp edx, 0xd442
je 0x41a980
sub dword [ebp - 4], 0x2cc5
add edx, ebx
add dword [ebp - 0x50], 0x17cda
add esi, 0x7097
or ebx, dword [ebp - 4]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x10], 0xe225
jl 0x41a8d0
mov dword [ebp - 0x1c], ecx
mov ecx, 0x18108
push 0xee47
call fcn.00401170
mov ebx, dword [ebp - 0x48]
add esp, 4
cmp dword [ebp - 0x2c], 0x2bf66
jge 0x41aa8e
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0xc]
nop dword [eax + eax]
xor dword [ebp - 0x28], 0x13997
add eax, 0x5756
xor dword [ebp - 0x38], 0xbb5e
add ecx, eax
mov eax, dword [ebp - 0x2c]
add dword [ebp - 0x18], eax
cmp dword [ebp - 0x4c], 0x11856
mov eax, dword [ebp - 0x1c]
je 0x41aa00
or dword [ebp - 8], 0xe547
and ecx, 0x168b3
or esi, 0x16c97
and edx, 0xdea4
sub eax, dword [ebp - 0x28]
sub edx, dword [ebp - 4]
inc dword [ebp - 0x2c]
and dword [ebp - 0x18], 0x922f
sub dword [ebp - 4], 0x6668
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xc], edx
cmp ecx, 0x1ae3
jge 0x41aa81
add ebx, dword [ebp - 4]
and edx, edi
and dword [ebp - 0x10], 0x17234
or dword [ebp - 0x18], 0xec77
cmp dword [ebp - 0x24], 0xda5d
mov dword [ebp - 0xc], edx
jle 0x41aa81
mov edx, dword [ebp - 0x38]
xor eax, 0x6587
and edx, dword [ebp - 0x14]
sub edi, esi
and dword [ebp - 0x28], 0x15e20
mov dword [ebp - 0x38], edx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x1c], eax
cmp eax, 0x584d
je 0x41aa81
add dword [ebp - 0x14], 0x2886
xor edi, 0x8259
cmp dword [ebp - 0x2c], 0x2bf66
jl 0x41a9c0
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
push 0xee47
mov ecx, 0x18108
call fcn.00401170
add esp, 0x1c
mov ecx, 0x2249
call fcn.00401690
mov eax, dword [ebp - 8]
add edi, dword [ebp - 0x34]
or eax, 0xca72
cmp eax, 0xdc5c
mov eax, dword [ebp - 0x38]
jge 0x41ab1c
and eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x44]
add edx, 0x5ed5
and edi, eax
xor edx, ebx
inc esi
or ecx, edi
inc ebx
cmp esi, 0x1feb8
jl 0x41ab22
mov eax, dword [ebp - 0xc]
push ecx
add eax, 0xfffdd30c
push eax
lea eax, [edx + 0x9548]
push eax
push ecx
lea edx, [ecx + 0xe85b]
mov ecx, dword [ebp - 0x1c]
push 0x7799
add ecx, 0x5af47
call fcn.00403290
call fcn.00404d30
add esp, 8
call fcn.00401e50
add esp, 0xc
call fcn.004015c0
push dword [0x47eddc]
push dword [0x47ee00]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
je 0x41b0f9
sub esp, 8
mov dword [ebp - 0x38], 0x139ae
push 0x6c02
call fcn.004018b0
mov ecx, eax
mov dword [ebp - 0x2c], eax
or ecx, 0x15a3c
mov edx, 0xcdea
sub edx, ecx
mov dword [ebp - 0x10], ecx
push 0x8edd
mov dword [ebp - 0x14], edx
mov edi, eax
push 0x501
push ecx
lea edx, [ecx - 0x10d87]
mov esi, 0xffffae0a
or edi, 0x1307
call fcn.00402d30
mov ecx, dword [ebp - 0x14]
mov ebx, eax
and ecx, 0x927a
mov dword [ebp - 0x18], 0x373af
add ecx, 0xf5fe
mov dword [ebp - 0x44], 0xfffef985
or ecx, 0x1bfef
mov dword [ebp - 0x4c], 0x86
mov dword [ebp - 0x14], ecx
add esp, 0x18
lea ecx, [edi + 0x443]
mov dword [ebp - 0xc], 0x483a
or ecx, 0x11c4f
xor edx, edx
mov eax, 0x1de77
cmp ebx, 0x4174
je 0x41ac53
mov edi, 0x86
mov dword [ebp - 0x38], 0x2b2b
and edi, dword [ebp - 0x10]
mov dword [ebp - 0x4c], edi
mov edi, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], edi
or dword [ebp - 0x4c], 0x114f1
xor edx, 0xfffef985
xor dword [ebp - 0x2c], 0x760
sub ecx, 0x103f8
mov dword [ebp - 0x1c], edx
sub esp, 0x10
mov dword [ebp - 0x24], ecx
mov edx, 0xf775
mov ecx, 0x5164
mov dword [ebp - 0x3c], 0x208
add ecx, edx
and esi, 0xf686
and edx, 0x17112
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x38]
mov edi, 0xffff9948
add ecx, edx
mov dword [ebp - 0x20], edi
sub edx, 0xe5c2
mov dword [ebp - 0x38], ecx
or edx, dword [ebp - 0x4c]
or eax, ecx
inc edx
mov dword [ebp - 0x34], eax
xor ebx, 0x6dd0
mov dword [ebp - 0x40], edx
xor esi, 0x373af
call fcn.00402bf0
sub esp, 8
mov dword [ebp - 0x30], eax
call fcn.00402260
mov dword [ebp - 0x54], eax
add esp, 0x18
add eax, 0xffff0648
mov dword [ebp - 0x50], eax
test eax, eax
jle 0x41ad7e
mov eax, dword [ebp - 0x2c]
mov ecx, 0x208
mov dword [ebp - 0x2c], eax
mov edx, 0xfffef985
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x20], edi
mov edi, 0x403
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4c], ebx
mov ebx, 0x483a
nop dword [eax + eax]
or edi, ecx
or ecx, eax
add edx, edi
mov dword [ebp - 0x44], edx
cmp esi, 0xae5a
jle 0x41ad6f
mov edx, dword [ebp - 0x48]
xor edi, ebx
and dword [ebp - 0x14], 0xb690
add edx, esi
and esi, 0x4956
mov dword [ebp - 0x48], edx
cmp ebx, 0x10525
jne 0x41ad6c
mov ebx, dword [ebp - 0x38]
xor edx, ecx
sub dword [ebp - 0x1c], ebx
and esi, 0x5043
mov dword [ebp - 0x48], edx
mov ebx, 0x12567
mov edx, dword [ebp - 0x54]
and dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x44]
sub dword [ebp - 0x50], 1
jne 0x41ad20
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x10]
lea edx, [edx - 0x1788d]
call fcn.00404ec0
mov dword [ebp - 0x28], eax
call fcn.00402ae0
call fcn.00405180
push ecx
mov edi, eax
call fcn.00403c80
mov edx, dword [ebp - 0x3c]
add esp, 4
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x20]
add dword [ebp - 0x50], ecx
add ecx, 0xbd25
add edx, dword [ebp - 0x40]
xor ebx, dword [ebp - 0x2c]
or esi, dword [ebp - 0x44]
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x3c], edx
cmp edi, 0x9986
jge 0x41adf6
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x1c]
and eax, 0x1415
xor ecx, dword [ebp - 0x44]
dec edx
mov dword [ebp - 0x34], eax
sub eax, dword [ebp - 0x50]
add edx, eax
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp - 0x3c]
inc dword [ebp - 0x38]
add eax, 0x16daf
sub ebx, 0x17edc
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x24], 0xef3c
jne 0x41ae75
sub ecx, dword [ebp - 0x10]
or edi, 0x16689
add edi, dword [ebp - 0x2c]
sub dword [ebp - 0x28], 0x6f44
cmp dword [ebp - 0x48], 0x1662d
mov dword [ebp - 0xc], ecx
jge 0x41ae75
mov edx, dword [ebp - 0x40]
add edx, dword [ebp - 0x48]
and esi, dword [ebp - 0x1c]
cmp ecx, 0xb29a
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x3c]
jne 0x41ae78
or eax, dword [ebp - 0x44]
sub ecx, 0x373af
and dword [ebp - 0x30], 0x10fa6
or edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], ecx
cmp ecx, 0x11545
jle 0x41ae78
add esi, 0xfffec4b6
xor esi, dword [ebp - 0x40]
jmp 0x41ae78
mov ecx, dword [ebp - 0x28]
cmp dword [ebp - 0x38], 0x9c3c
jl 0x41adb0
lea eax, [edx - 0x3402]
mov dword [ebp - 0x50], esi
push eax
sub esp, 0x10
call fcn.00401930
mov dword [ebp - 0x44], eax
add esp, 0x14
mov eax, dword [ebp - 0xc]
sub eax, 0xef14
mov dword [ebp - 0xc], eax
cmp eax, 0x80d0
je 0x41aee9
mov ecx, dword [ebp - 0x30]
xor edi, 0xc803
or ebx, dword [ebp - 0x14]
or ecx, 0xa73
and dword [ebp - 0x34], 0x1233d
xor ebx, 0xf29c
cmp dword [ebp - 0x28], 0xdda8
mov dword [ebp - 0x30], ecx
jle 0x41aee9
mov eax, 0x373af
and eax, 0x12d0d
sub eax, ecx
mov dword [ebp - 0x18], eax
sub esp, 0x14
call fcn.004017d0
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + 0x1e74]
push eax
lea edx, [ecx + 0xc8d2]
call fcn.004040c0
add esp, 0xc
mov dword [ebp - 0x38], eax
call fcn.00404e90
mov ecx, dword [ebp - 0x34]
add esp, 0xc
mov dword [ebp - 0x48], eax
add eax, 0xffff3783
mov dword [ebp - 0x4c], 0
test eax, eax
jle 0x41af9b
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x3c]
sub ecx, 0xd6b6
cmp edx, 0xd622
jge 0x41af85
and dword [ebp - 0x24], 0x9f81
add ecx, 0x136cf
sub dword [ebp - 0x1c], 0xe567
or edx, 0xc2c4
mov esi, dword [ebp - 0xc]
add ebx, 0x13152
cmp eax, 0xb43
jne 0x41af85
xor edi, dword [ebp - 0x4c]
cmp ebx, 0x872
je 0x41af85
add edx, 0xea1a
add edi, 0x1400d
xor esi, dword [ebp - 0x20]
mov dword [ebp - 0xc], esi
mov eax, dword [ebp - 0x48]
inc dword [ebp - 0x4c]
add eax, 0xffff3783
cmp dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x38]
jl 0x41af30
mov esi, dword [ebp - 0x50]
sub esp, 0x10
call fcn.00401350
mov eax, dword [ebp - 0xc]
add esp, 0x10
nop dword [eax]
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp - 0x18]
or edx, dword [ebp - 0x24]
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x38]
cmp esi, 0x8263
jge 0x41b01d
xor esi, 0xc660
mov dword [ebp - 0x20], 0
sub ecx, 0xd0f7
cmp esi, 0x2732
je 0x41b01d
mov edx, dword [ebp - 0x1c]
and dword [ebp - 0x24], edx
or dword [ebp - 0x18], edi
cmp dword [ebp - 0x24], 0x2336
mov edx, dword [ebp - 0x38]
jle 0x41b01d
sub eax, ecx
mov dword [ebp - 0x20], 0
cmp ebx, 0x846c
jne 0x41b01d
add ecx, dword [ebp - 0x48]
cmp dword [ebp - 0x18], 0x42ec
jle 0x41b01d
xor dword [ebp - 0x24], edi
inc edx
and eax, 0xfcde
mov dword [ebp - 0x38], edx
cmp edx, 0x1606f
jl 0x41afb0
sub esp, 0x14
mov dword [ebp - 0xc], eax
call fcn.00405280
mov ecx, dword [ebp - 0x48]
lea edx, [edi + 0x32ffc]
add ecx, 0xfffff232
mov dword [ebp - 0x54], eax
push ecx
call fcn.004040c0
add esp, 0x18
call fcn.00401200
lea edi, [eax - 0x9857]
test edi, edi
jle 0x41b0ca
mov ecx, dword [ebp - 0x54]
cmp ecx, 0xea3b
je 0x41b0c5
mov eax, dword [ebp - 0x20]
add ecx, 0x17d46
add eax, 0x14212
mov dword [ebp - 0x20], eax
cmp esi, 0x4555
jge 0x41b0c5
add ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x30]
cmp edx, 0x514c
jle 0x41b0c5
xor dword [ebp - 0x38], 0x5b95
add edx, eax
xor ebx, 0xb68d
mov dword [ebp - 0x30], edx
cmp eax, 0x2a15
jle 0x41b0c5
cmp ebx, 0xcc59
jle 0x41b0c5
xor ebx, dword [ebp - 0x44]
add ecx, 0x10c82
add esi, 0xa05d
sub edi, 1
jne 0x41b066
mov eax, dword [ebp - 0x38]
nop dword [eax]
inc eax
and esi, 0x16bd3
cmp eax, 0x13bfb
jl 0x41b0d0
sub esp, 0x14
call fcn.00401370
add eax, 0xffffc6d7
add esp, 0x14
test eax, eax
jle 0x41b121
sub eax, 1
je 0x41b121
jmp 0x41b0f2
mov ecx, 0xed98
call fcn.00402430
push 0xee47
mov ecx, 0x18108
call fcn.00401170
add esp, 4
call fcn.004021a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
sub esp, 0x1c
call fcn.00401230
add esp, 0x18
call fcn.00401850
sub esp, 0x18
call fcn.00404c70
add esp, 4
call fcn.00402260
add esi, 0x9e99
push esi
call fcn.004050f0
add esp, 0x1c
call fcn.00401610
call fcn.00418440
int3