Function at 0x4043cf
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa8
mov dword [ebp - 0x10], 0x4ff74cbf
mov dword [ebp - 0x6c], 0x2c6b4ecd
cmp dword [ebp + 0x10], 0
je 0x4043f6
mov dword [ebp - 0x6c], 0x61954ec3
mov ebx, dword [ebp + 0xc]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [ebp - 0x10]
cmp eax, 0xe0ac901
jg 0x404464
cmp eax, 0xc85d6b52
jg 0x4044cf
cmp eax, 0xb7416acf
jg 0x40461a
cmp eax, 0x9073154c
jg 0x40488d
cmp eax, 0x896aaaf9
jg 0x404c2e
cmp eax, 0x83afd98c
je 0x4054ff
cmp eax, 0x85729816
je 0x405715
cmp eax, 0x85d272ba
jne 0x4043ff
mov eax, dword [ebp - 0x4c]
mov word [eax + 0x10], 0
mov dword [ebp - 0x10], 0x5e880fc8
jmp 0x4043ff
cmp eax, 0x4fed2b49
jg 0x40454b
cmp eax, 0x2c6b4ecc
jg 0x4045a9
cmp eax, 0x2279f72e
jg 0x404783
cmp eax, 0x17eb337d
jg 0x404aaf
cmp eax, 0xe0ac902
je 0x404f6d
cmp eax, 0xfb72be3
je 0x4051b4
cmp eax, 0x110a9653
jne 0x4043ff
mov eax, dword [ebp - 0x14]
and eax, 0xffffffe0
shl eax, 3
imul eax, eax, 0xbb8
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x911cf504
jmp 0x4043ff
cmp eax, 0xf32f4a71
jle 0x404679
cmp eax, 0xb338d6
jg 0x404849
cmp eax, 0xfbcf93e9
jg 0x404ba0
cmp eax, 0xf32f4a72
je 0x40536d
cmp eax, 0xf8b45eb0
je 0x40540a
cmp eax, 0xfb43bb7c
jne 0x4043ff
push 5
push 0x46f1ec
push 0x16
push dword [ebp - 0x50]
call fcn.00408cf0
add esp, 0x10
push dword [ebp - 0x50]
push dword [ebp - 0x68]
call edi
push 2
push 0x104
call fcn.0045a6a3
add esp, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 0x604f1471
jmp 0x4043ff
cmp eax, 0x640bc930
jg 0x4046fe
cmp eax, 0x5d7ee165
jg 0x404747
cmp eax, 0x538d1cfc
jg 0x404a41
cmp eax, 0x4fed2b4a
je 0x404fa7
cmp eax, 0x4ff74cbf
je 0x4051e3
cmp eax, 0x521228fc
jne 0x4043ff
cmp dword [ebp - 0x84], 0
mov eax, 0x2c6b4ecd
je 0x4057a9
mov eax, 0x338d8469
jmp 0x4057a9
cmp eax, 0x3c88ba0d
jg 0x4047ca
cmp eax, 0x3a161743
jg 0x404ae3
cmp eax, 0x2c6b4ecd
je 0x404fbf
cmp eax, 0x3120fa30
je 0x4051eb
cmp eax, 0x338d8469
jne 0x4043ff
imul eax, dword [ebp - 0x18], 0xe4000
shr eax, 0xe
lea ecx, [eax - 0x2a]
imul eax, eax
imul edx, eax, 0x5633
shr ecx, 0x18
dec edx
mov dword [ebp - 0x18], ecx
mov ecx, 0xc41b7a5d
cmp edx, eax
je 0x40460b
mov ecx, 0xc6b83513
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x70], 0
jmp 0x4043ff
cmp eax, 0xc1802759
jg 0x4048e1
cmp eax, 0xbef2bd59
jg 0x404c81
cmp eax, 0xb7416ad0
je 0x405534
cmp eax, 0xb93f52c9
je 0x405730
cmp eax, 0xbac9c344
jne 0x4043ff
imul ecx, dword [ebp - 0x14], 0xf0
mov eax, ecx
shr eax, 5
add eax, 0xffffffc4
mov dword [ebp - 0x14], eax
mov eax, 0x2b0c6bc1
cmp ecx, 0x1460
jae 0x4057a4
jmp 0x4057a9
cmp eax, 0xdd755d9f
jle 0x40492e
cmp eax, 0xe2331431
jg 0x4049d3
cmp eax, 0xdd755da0
je 0x404e9c
cmp eax, 0xdf4276b9
je 0x404fd4
cmp eax, 0xe048ebb3
jne 0x4043ff
mov esi, dword [ebp - 0x14]
shl esi, 0xa
add esi, 0xe4000000
and esi, 0xffc00000
mov dword [ebp - 0x14], esi
push 0x3662
push esi
call fcn.004016c4
fstp st(0)
add esp, 8
push esi
push 0x3079
call fcn.00401b5e
add esp, 8
mov eax, 0x521228fc
cmp esi, 0x82
jl 0x4057a9
mov eax, 0xb93f52c9
jmp 0x4057a9
cmp eax, 0x72b249fb
jle 0x40497c
cmp eax, 0x797b3e20
jg 0x4049f9
cmp eax, 0x72b249fc
je 0x404ef7
cmp eax, 0x73b4ff6e
je 0x405147
cmp eax, 0x7927118f
jne 0x4043ff
push eax
mov eax, esp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xca2e3db
jmp 0x4043ff
cmp eax, 0x5f9af69a
jg 0x404a82
cmp eax, 0x5d7ee166
je 0x40500f
cmp eax, 0x5e413eaf
je 0x40521d
cmp eax, 0x5e880fc8
jne 0x4043ff
shl dword [ebp - 0x18], 0xb
mov dword [ebp - 0x10], 0xc096665b
jmp 0x4043ff
cmp eax, 0x26e110b3
jg 0x404b2b
cmp eax, 0x2279f72f
je 0x405025
cmp eax, 0x2397a07c
je 0x40524f
cmp eax, 0x24516734
jne 0x4043ff
mov eax, dword [ebp - 0x18]
shl eax, 0xb
add eax, 0xffffff97
shr eax, 6
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x5f9af69b
jmp 0x4043ff
cmp eax, 0x4109e1eb
jg 0x404b64
cmp eax, 0x3c88ba0e
je 0x40504a
cmp eax, 0x3ca2b0d1
je 0x40526a
cmp eax, 0x3d56651f
jne 0x4043ff
mov eax, dword [ebp - 0xa4]
mov word [eax], 0
mov eax, dword [ebp - 0x3c]
movzx ecx, word [0x46f0f2]
mov word [eax + 0xc], cx
mov ecx, dword [0x46f0ee]
mov dword [eax + 8], ecx
mov ecx, dword [0x46f0ea]
mov dword [eax + 4], ecx
mov ecx, dword [0x46f0e6]
mov dword [eax], ecx
push 4
push 0x46f0f4
push 7
push dword [ebp - 0x3c]
call fcn.00408cf0
add esp, 0x10
mov dword [ebp - 0x10], 0x3120fa30
jmp 0x4043ff
cmp eax, 0x855e4e9
jg 0x404bed
cmp eax, 0xb338d7
je 0x40539f
cmp eax, 0x4818ad7
je 0x405444
cmp eax, 0x5a28646
jne 0x4043ff
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x10], 0xd2cf25b7
jmp 0x4043ff
cmp eax, 0xab6a2fdb
jg 0x404cc5
cmp eax, 0x9073154d
je 0x4055a5
cmp eax, 0x911cf504
je 0x40574d
cmp eax, 0xa4b1aec8
jne 0x4043ff
mov eax, dword [ebp - 0x14]
shl eax, 0x15
add eax, 0xba00000
mov dword [ebp - 0x14], eax
push 0x3c26
push eax
call fcn.004025ed
add esp, 8
mov dword [ebp - 0x10], 0xe0ac902
jmp 0x4043ff
cmp eax, 0xc46c13f8
jg 0x404d01
cmp eax, 0xc180275a
je 0x405624
cmp eax, 0xc3dc7580
je 0x405770
cmp eax, 0xc41b7a5d
jne 0x4043ff
imul eax, dword [ebp - 0x14], 0x8e
add eax, 0xffffe062
shr eax, 0xd
and eax, 0xfffffffe
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xfbcf93ea
jmp 0x4043ff
cmp eax, 0xcb8e8631
jle 0x404d3c
cmp eax, 0xcb8e8632
je 0x405459
cmp eax, 0xd2cf25b7
je 0x4054a4
cmp eax, 0xd89852ef
jne 0x4043ff
mov eax, dword [ebp - 0x88]
mov byte [eax], 0
mov eax, dword [ebp - 0x28]
movzx ecx, word [0x47c3ce]
mov word [eax], cx
mov dword [ebp - 0x10], 0xdf4276b9
jmp 0x4043ff
cmp eax, 0x6a81eecf
jle 0x404d7a
cmp eax, 0x6a81eed0
je 0x404e13
cmp eax, 0x6d69f29a
je 0x404e42
cmp eax, 0x6ff08ad4
jne 0x4043ff
imul ecx, dword [ebp - 0x14], 0xb1
shr ecx, 3
and ecx, 0xffffff80
mov dword [ebp - 0x14], ecx
mov eax, 0x41107639
cmp ecx, 0x90
jb 0x4057a9
mov eax, 0xe2331432
jmp 0x4057a9
cmp eax, 0xe2331432
je 0x404ec0
cmp eax, 0xe3b16e33
je 0x405067
cmp eax, 0xeb8cdcd0
je 0x405875
jmp 0x4043ff
cmp eax, 0x797b3e21
je 0x404f19
cmp eax, 0x7d3aefe2
je 0x405195
cmp eax, 0x7e9029da
jne 0x4043ff
push 2
push dword [ebp - 0x24]
push dword [ebp - 0x20]
call fcn.004018d0
add esp, 0xc
mov ecx, 0x2c6b4ecd
test eax, eax
je 0x40533a
mov ecx, 0x1b818959
jmp 0x40533a
cmp eax, 0x5b8f1c07
jg 0x404da8
cmp eax, 0x538d1cfd
je 0x404df0
cmp eax, 0x58a93a4a
jne 0x4043ff
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, 2
push eax
call fcn.0045b484
add esp, 4
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x10], 0x24516734
jmp 0x4043ff
cmp eax, 0x5f9af69b
je 0x405082
cmp eax, 0x604f1471
je 0x405285
cmp eax, 0x61954ec3
jne 0x4043ff
mov dword [ebp - 0x10], 0xb93f52c9
jmp 0x4043ff
cmp eax, 0x17eb337e
je 0x40508e
cmp eax, 0x1b6da82d
je 0x40529c
cmp eax, 0x1b818959
jne 0x4043ff
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x10], 0x4109e1ec
jmp 0x4043ff
cmp eax, 0x3a161744
je 0x4050b7
cmp eax, 0x3a5a3d64
je 0x4052c3
cmp eax, 0x3b7254e2
jne 0x4043ff
mov ecx, dword [ebp - 0x14]
shr ecx, 0xa
and ecx, 0x1ffff8
mov dword [ebp - 0x14], ecx
mov eax, 0xb93f52c9
cmp ecx, 0x7a
jae 0x4057a9
mov eax, 0x521228fc
jmp 0x4057a9
cmp eax, 0x26e110b4
je 0x4050db
cmp eax, 0x2849dec8
je 0x4052e2
cmp eax, 0x2b0c6bc1
jne 0x4043ff
mov eax, dword [ebp - 0x3c]
add eax, 0xe
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x10], 0xfb72be3
jmp 0x4043ff
cmp eax, 0x4109e1ec
je 0x405129
cmp eax, 0x414582dc
je 0x40530d
cmp eax, 0x4301b796
jne 0x4043ff
mov eax, dword [ebp - 0x18]
shr eax, 7
imul eax, eax, 0x2340000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x4818ad7
jmp 0x4043ff
cmp eax, 0xfbcf93ea
je 0x4053b4
cmp eax, 0xfc661776
je 0x405465
cmp eax, 0xfce973f4
jne 0x4043ff
imul eax, dword [ebp - 0x14], 0xfd
shr eax, 6
imul ecx, eax, 0x76
add ecx, 0xffffad8d
mov dword [ebp - 0x14], ecx
mov eax, 0x7927118f
cmp ecx, 0xdd
jl 0x405005
jmp 0x4057a9
cmp eax, 0x855e4ea
je 0x4053d1
cmp eax, 0x8ed7c3c
je 0x405486
cmp eax, 0xca2e3db
jne 0x4043ff
mov eax, dword [ebp - 0x18]
shr eax, 2
and eax, 0x3ffff000
add eax, 0xffffffcf
shr eax, 6
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x5a28646
jmp 0x4043ff
cmp eax, 0x896aaafa
je 0x40564a
cmp eax, 0x8ab8d8a6
je 0x4057b1
cmp eax, 0x906ed45e
jne 0x4043ff
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 0x55]
imul ecx, ecx
add eax, 0xffffff63
imul edx, ecx, 0x770b
dec edx
shr eax, 9
mov dword [ebp - 0x18], eax
mov eax, 0xc180275a
cmp ecx, edx
je 0x4057a9
mov eax, 0xb3837d2d
jmp 0x4057a9
cmp eax, 0xbef2bd5a
je 0x40567e
cmp eax, 0xc096665b
je 0x4057cf
cmp eax, 0xc0f85824
jne 0x4043ff
push dword [ebp - 0x80]
push dword [ebp + 0x10]
call fcn.0040197b
add esp, 8
mov dword [ebp - 0x20], eax
push eax
mov eax, esp
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0xe2331432
jmp 0x4043ff
cmp eax, 0xab6a2fdc
je 0x40569c
cmp eax, 0xb3837d2d
je 0x405815
cmp eax, 0xb5e312e3
jne 0x4043ff
imul eax, dword [ebp - 0x18], 0xda800000
add eax, 0x5a400000
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x3c88ba0e
jmp 0x4043ff
cmp eax, 0xc46c13f9
je 0x4056b6
cmp eax, 0xc6b83513
je 0x405847
cmp eax, 0xc7b6bcf7
jne 0x4043ff
mov eax, dword [ebp - 0x18]
shl eax, 0x10
add eax, 0xffbcfdaf
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x2c6b4ecd
jmp 0x4043ff
cmp eax, 0xc95d98ff
je 0x405342
cmp eax, 0xc9ea9a1e
jne 0x405859
imul ecx, dword [ebp - 0x14], 0x5d80000
or ecx, 0x84
mov dword [ebp - 0x14], ecx
mov eax, 0xe3b16e33
cmp ecx, 0x16
jl 0x4057a9
mov eax, 0xc0f85824
jmp 0x4057a9
cmp eax, 0x640bc931
je 0x404e6b
cmp eax, 0x65af7e53
jne 0x4043ff
mov eax, dword [ebp - 0x18]
shl eax, 0xf
add eax, 0xfffffff8
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xd89852ef
jmp 0x4043ff
cmp eax, 0x5d42ea50
jne 0x405865
mov esi, 2
push esi
push 0x47c3d0
push esi
push dword [ebp - 0x28]
call fcn.00408bb0
add esp, 0x10
push esi
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call fcn.004018d0
add esp, 0xc
mov ecx, 0xc7b6bcf7
test eax, eax
je 0x40533a
mov ecx, 0xcb8e8632
jmp 0x40533a
mov ecx, dword [ebp - 0x7c]
mov eax, 0xc6b83513
cmp ecx, dword [ebp - 0xa0]
jb 0x404e05
mov eax, 0x6a81eed0
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x70], eax
jmp 0x4043ff
mov eax, dword [ebp - 0x18]
lea ecx, [eax - 0x43]
imul ecx, ecx
imul edx, ecx, 0x17ef
dec edx
add eax, 0xfffffe44
mov dword [ebp - 0x18], eax
mov eax, 0x58a93a4a
cmp ecx, edx
je 0x4057a9
mov eax, 0x2c6b4ecd
jmp 0x4057a9
push dword [ebp - 0xac]
push dword [ebp - 0x1c]
call edi
push eax
mov eax, esp
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
add eax, 2
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0x10], 0xdd755da0
jmp 0x4043ff
mov esi, dword [ebp - 0x14]
shr esi, 0x17
mov dword [ebp - 0x14], esi
push esi
push 0x3942
push 0x5d0e
call fcn.00401911
add esp, 0xc
push esi
call fcn.004030a1
add esp, 4
mov dword [ebp - 0x10], 0x2c6b4ecd
jmp 0x4043ff
mov eax, dword [ebp - 0xb0]
mov word [eax], 0
mov eax, dword [ebp - 0x54]
movzx ecx, word [0x46f1f6]
mov word [eax], cx
mov dword [ebp - 0x10], 0x17eb337e
jmp 0x4043ff
mov eax, dword [ebp - 0x24]
mov byte [eax + 2], 0
mov eax, dword [ebp - 0x24]
movzx ecx, word [0x47c3ca]
mov word [eax], cx
mov eax, 2
push eax
push 0x47c3cc
push eax
push dword [ebp - 0x24]
call fcn.00408bb0
add esp, 0x10
mov dword [ebp - 0x10], 0x7e9029da
jmp 0x4043ff
push dword [ebp - 0x38]
call fcn.0045b0dc
add esp, 4
push dword [ebp - 0x34]
call fcn.0045b0dc
add esp, 4
mov dword [ebp - 0x10], 0x3a161744
jmp 0x4043ff
mov eax, dword [ebp - 0xa8]
mov word [eax], 0
push 0x2c
push 0x46f120
push dword [ebp - 0x44]
call fcn.0044a890
add esp, 0xc
push 4
push 0x46f14c
push 0x16
push dword [ebp - 0x44]
call fcn.00408cf0
add esp, 0xc
push ebx
push dword [ebp - 0x44]
push dword [ebp + 8]
call fcn.00403e68
add esp, 0x10
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 0x85729816
jmp 0x4043ff
mov eax, dword [ebp - 0x14]
shl eax, 3
and eax, 0x7fffffc0
imul esi, eax, 0x182
mov dword [ebp - 0x14], esi
push 0x35ee
push esi
call fcn.00401683
add esp, 8
mov eax, 0x3a5a3d64
cmp esi, 0x5f
jl 0x4057a9
mov eax, 0xfce973f4
jmp 0x4057a9
mov eax, dword [ebp - 0x5c]
add eax, 2
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0x10], 0xc85d6b53
jmp 0x4043ff
push eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0x2b0c6bc1
jmp 0x4043ff
mov eax, dword [ebp - 0x18]
mov ecx, 0x10d
add eax, ecx
mov ecx, eax
imul ecx, eax
shl eax, 0xc
imul edx, ecx, 0x1c49
add eax, 0xffffff5f
dec edx
shr eax, 3
mov dword [ebp - 0x18], eax
mov eax, 0xc0f85824
cmp ecx, edx
je 0x4057a9
mov eax, 0x5d42ea50
jmp 0x4057a9
imul eax, dword [ebp - 0x18], 0x1c0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x5e413eaf
jmp 0x4043ff
imul ecx, dword [ebp - 0x14], 0x7680
add ecx, 0xffffff8d
mov dword [ebp - 0x14], ecx
mov eax, 0x3ca2b0d1
cmp ecx, 0x19
jb 0x4057a9
mov eax, 0x896aaafa
jmp 0x4057a9
push dword [ebp - 0x98]
call fcn.0045b484
add esp, 4
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x10], 0x58a93a4a
jmp 0x4043ff
mov eax, dword [ebp - 0x94]
add eax, 2
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x10], 0xb5e312e3
jmp 0x4043ff
mov dword [ebp - 0x10], 0x2849dec8
jmp 0x4043ff
xor eax, eax
inc eax
push eax
push 0x46f1f8
push eax
push dword [ebp - 0x54]
call fcn.00408cf0
add esp, 0x10
push dword [ebp - 0x54]
push dword [ebp - 0x1c]
call edi
mov dword [ebp - 0x10], 0x73b4ff6e
jmp 0x4043ff
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x7c], eax
push dword [ebp + 0x10]
call fcn.0040196c
add esp, 4
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x10], 0x538d1cfd
jmp 0x4043ff
mov eax, dword [ebp - 0x14]
shr eax, 0xc
lea esi, [eax + eax*2]
shl esi, 0xa
add esi, 0x60c00
mov dword [ebp - 0x14], esi
push esi
call fcn.00401e0c
add esp, 4
push 0x2964
push 0x472b
push esi
push 0x4761
call fcn.00408bb0
add esp, 0x10
mov eax, 0x2c6b4ecd
cmp esi, 0x21
jl 0x4057a9
mov eax, 0xbac9c344
jmp 0x4057a9
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add eax, 2
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x10], 0x65af7e53
jmp 0x4043ff
mov eax, dword [ebp + 8]
push dword [eax + 8]
push dword [ebp - 0x1c]
call edi
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov word [eax + 0x14], 0
push 0x14
push 0x46f200
push dword [ebp - 0x58]
call fcn.0044a890
add esp, 0xc
push 8
push 0x46f214
push 0xa
push dword [ebp - 0x58]
call fcn.00408cf0
add esp, 0x10
mov dword [ebp - 0x10], 0xab6a2fdc
jmp 0x4043ff
mov eax, dword [ebp - 0x18]
add eax, eax
add eax, 0x28
shr eax, 0xf
add eax, 0xee
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0x1b6da82d
jmp 0x4043ff
mov eax, dword [ebp - 0x18]
add eax, 0xffffffc2
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x5039
dec edx
shl eax, 0xf
mov dword [ebp - 0x18], eax
mov eax, 0x8ed7c3c
cmp ecx, edx
je 0x4057a9
mov eax, 0x3d56651f
jmp 0x4057a9
mov eax, dword [ebp - 0x6c]
jmp 0x4057a9
imul eax, dword [ebp - 0x18], 0x75
add eax, 0x1332
mov ecx, eax
imul ecx, eax
shr eax, 5
imul edx, ecx, 0x277
dec edx
add eax, 0xfffffe38
mov dword [ebp - 0x18], eax
mov eax, 0xbef2bd5a
cmp edx, ecx
jne 0x4057a4
jmp 0x4057a9
sub esp, 4
push ebx
push dword [ebp - 0x40]
push dword [ebp + 8]
call fcn.00403e68
add esp, 0x10
sub esp, 0x30
mov eax, esp
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
add eax, 0x2c
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x10], 0xf8b45eb0
jmp 0x4043ff
imul eax, dword [ebp - 0x18], 0x4c4a000
add eax, 0x2767800
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xfb43bb7c
jmp 0x4043ff
imul eax, dword [ebp - 0x14], 0xa1
add eax, 0xffffa4cf
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xb7416ad0
jmp 0x4043ff
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [ebp - 0xac], eax
mov dword [ebp - 0x10], 0x6d69f29a
jmp 0x4043ff
mov eax, dword [ebp - 0x50]
mov word [eax + 0x2c], 0
push 0x2c
push 0x46f1c0
push dword [ebp - 0x50]
call fcn.0044a890
add esp, 0xc
mov dword [ebp - 0x10], 0x2397a07c
jmp 0x4043ff
mov ecx, dword [ebp - 0x14]
shl ecx, 0x12
mov dword [ebp - 0x14], ecx
mov eax, 0x521228fc
cmp ecx, 0xa3
jge 0x405674
jmp 0x4057a9
push dword [ebp - 0x60]
push dword [ebp - 0x74]
push dword [ebp - 0x34]
call fcn.0045b4cc
add esp, 0xc
mov eax, dword [ebp - 0x60]
add eax, eax
add eax, dword [ebp - 0x34]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x10], 0xf32f4a72
jmp 0x4043ff
mov eax, dword [ebp - 0x18]
add eax, 0x1d
shr eax, 8
add eax, 0xffffff8d
imul ecx, eax, 0x3700
imul eax, eax
imul edx, eax, 0xa89
dec edx
mov dword [ebp - 0x18], ecx
mov ecx, 0x521228fc
cmp eax, edx
je 0x40533a
mov ecx, 0xb7416ad0
mov dword [ebp - 0x10], ecx
jmp 0x4043ff
imul esi, dword [ebp - 0x14], 0x3994
mov dword [ebp - 0x14], esi
push esi
call fcn.00402d26
add esp, 4
mov eax, 0xb338d7
cmp esi, 0x33
jae 0x4057a9
mov eax, 0xc3dc7580
jmp 0x4057a9
mov eax, dword [ebp - 0x9c]
xor esi, esi
mov word [eax], si
push dword [ebp - 0x64]
push dword [ebp - 0x78]
push dword [ebp - 0x38]
call fcn.0045b4cc
add esp, 0xc
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x38]
mov word [ecx + eax*2], si
mov dword [ebp - 0x10], 0x8ab8d8a6
jmp 0x4043ff
mov eax, dword [ebp - 0x48]
mov word [eax + 0xe], 0
mov dword [ebp - 0x10], 0xc46c13f9
jmp 0x4043ff
mov eax, dword [ebp - 0x14]
shr eax, 0xe
imul eax, eax, 0x6e
add eax, 0x2d8c
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xe048ebb3
jmp 0x4043ff
imul eax, dword [ebp - 0x14], 0xb6
add eax, 0x16c
shr eax, 0xf
imul ecx, eax, 0xd1
add ecx, 0xffffc7f8
mov dword [ebp - 0x14], ecx
mov eax, 0x7e9029da
cmp ecx, 0xef
je 0x4057a9
mov eax, 0xc9ea9a1e
jmp 0x4057a9
mov eax, dword [ebp - 0x18]
shr eax, 0xb
add eax, 0xffffffae
mov ecx, eax
shr ecx, 0xa
shr eax, 0xc
imul ecx, ecx
imul edx, ecx, 0x72cf
dec edx
add eax, 0xffffff6f
mov dword [ebp - 0x18], eax
mov eax, 0xb3837d2d
cmp edx, ecx
je 0x4057a9
mov eax, 0x797b3e21
jmp 0x4057a9
mov eax, dword [ebp - 0x40]
mov word [eax + 0x14], 0
mov dword [ebp - 0x10], 0x906ed45e
jmp 0x4043ff
mov dword [ebp - 0x10], 0x7927118f
jmp 0x4043ff
mov eax, dword [ebp - 0x14]
and eax, 0xffffff80
shl eax, 5
add eax, 0xffffffae
shr eax, 0xf
add eax, 0x7d
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xe2331432
jmp 0x4043ff
mov eax, dword [ebp - 0x14]
mov ecx, 0xfffffeba
add eax, ecx
and eax, 0xffffc000
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xe3a696a1
jmp 0x4043ff
mov eax, dword [ebp - 0x8c]
mov byte [eax], 0
mov eax, dword [ebp - 0x2c]
movzx ecx, word [0x47c3d2]
mov word [eax], cx
mov esi, 2
push esi
push 0x47c3d4
push esi
push dword [ebp - 0x2c]
call fcn.00408bb0
add esp, 0x10
push dword [ebp - 0x2c]
push dword [ebp - 0x20]
call fcn.00401683
add esp, 8
mov dword [ebp - 0x74], eax
push eax
mov eax, esp
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
add eax, esi
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x10], 0x414582dc
jmp 0x4043ff
mov esi, dword [ebp - 0x14]
shr esi, 0xc
and esi, 0x7ffff
mov dword [ebp - 0x14], esi
push esi
push 0x1542
call fcn.004018b6
add esp, 8
mov eax, 0x855e4ea
cmp esi, 0x3d
jae 0x4057a9
mov eax, 0x2279f72f
jmp 0x4057a9
mov eax, dword [ebp - 0x90]
mov byte [eax], 0
mov eax, dword [ebp - 0x30]
movzx ecx, word [0x47c3d6]
mov word [eax], cx
mov eax, 2
push eax
push 0x47c3d8
push eax
push dword [ebp - 0x30]
call fcn.00408bb0
add esp, 0x10
push dword [ebp - 0x30]
push dword [ebp - 0x20]
call fcn.00401683
add esp, 8
mov dword [ebp - 0x78], eax
push dword [ebp - 0x74]
call fcn.0045bb70
add esp, 4
mov dword [ebp - 0x60], eax
push dword [ebp - 0x78]
call fcn.0045bb70
add esp, 4
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x60]
add eax, eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x10], 0xe3b16e33
jmp 0x4043ff
sub esp, 4
push ebx
push dword [ebp - 0x4c]
mov edi, dword [ebp + 8]
push edi
call fcn.00403e68
add esp, 0x10
sub esp, 0x20
mov esi, esp
mov word [esi + 0x1e], 0
push 0x1e
push 0x46f190
push esi
call fcn.0044a890
add esp, 0xc
push 5
push 0x46f1ae
push 0xf
push esi
call fcn.00408cf0
add esp, 0xc
push ebx
push esi
push edi
call fcn.00403e68
add esp, 0x10
push 2
push 0x104
call fcn.0045a6a3
add esp, 8
mov dword [ebp - 0x68], eax
push dword [edi + 4]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatW]
push dword [ebp - 0x68]
call edi
sub esp, 0x30
mov eax, esp
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x10], 0x7d3aefe2
jmp 0x4043ff
sub esp, 4
push ebx
push dword [ebp - 0x3c]
push dword [ebp + 8]
call fcn.00403e68
add esp, 0x10
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x10], 0x4301b796
jmp 0x4043ff
mov eax, dword [ebp - 0x14]
shr eax, 1
imul ecx, eax, 0xcf
add ecx, 0xffffb508
mov eax, ecx
shr eax, 4
mov dword [ebp - 0x14], eax
mov eax, 0xd2cf25b7
cmp ecx, 0x230
jb 0x4057a9
mov eax, 0xd89852ef
jmp 0x4057a9
mov eax, dword [ebp - 0x14]
shl eax, 0x14
mov dword [ebp - 0x14], eax
mov eax, 0x2b0c6bc1
je 0x4057a9
mov eax, 0x110a9653
jmp 0x4057a9
push dword [ebp - 0x58]
push dword [ebp - 0x1c]
call edi
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x10], 0x4fed2b4a
jmp 0x4043ff
mov eax, dword [ebp - 0x48]
movzx ecx, word [0x46f160]
mov word [eax + 0xc], cx
mov ecx, dword [0x46f15c]
mov dword [eax + 8], ecx
mov ecx, dword [0x46f158]
mov dword [eax + 4], ecx
mov ecx, dword [0x46f154]
mov dword [eax], ecx
push 4
push 0x46f162
push 7
push dword [ebp - 0x48]
call fcn.00408cf0
add esp, 0xc
push ebx
push dword [ebp - 0x48]
push dword [ebp + 8]
call fcn.00403e68
add esp, 0x10
sub esp, 0x14
mov eax, esp
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], 0x85d272ba
jmp 0x4043ff
imul eax, dword [ebp - 0x18], 0x1f100000
add eax, 0xffc736c0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], 0xb338d7
jmp 0x4043ff
push dword [ebp + 0x10]
call fcn.0040196c
add esp, 4
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x10], 0x521228fc
jmp 0x4043ff
imul ecx, dword [ebp - 0x14], 0xd6
mov eax, ecx
shr eax, 0xd
mov dword [ebp - 0x14], eax
mov eax, 0x2c6b4ecd
cmp ecx, 0xde000
jb 0x4057a9
mov eax, 0x2b0c6bc1
jmp 0x4057a9
mov eax, dword [ebp - 0x14]
and eax, 0x3f
shl eax, 0x19
imul esi, eax, 0x57
mov dword [ebp - 0x14], esi
push esi
push 0x256d
push 0x5f16
push 0x49c8
call fcn.00408a60
add esp, 0x10
mov eax, 0x5b8f1c08
cmp esi, 0xfb
jl 0x4057a9
mov eax, 0xc180275a
mov dword [ebp - 0x10], eax
jmp 0x4043ff
push ebx
push dword [ebp - 0x38]
push dword [ebp - 0x34]
push dword [ebp + 8]
call fcn.0040391b
add esp, 0x10
mov dword [ebp - 0x10], 0x72b249fc
jmp 0x4043ff
mov eax, dword [ebp - 0x4c]
mov ecx, dword [0x46f176]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x46f172]
mov dword [eax + 8], ecx
mov ecx, dword [0x46f16e]
mov dword [eax + 4], ecx
mov ecx, dword [0x46f16a]
mov dword [eax], ecx
push 4
push 0x46f17a
push 8
push dword [ebp - 0x4c]
call fcn.00408cf0
add esp, 0x10
mov dword [ebp - 0x10], 0x9073154d
jmp 0x4043ff
push 0x14
push 0x46f100
push dword [ebp - 0x40]
call fcn.0044a890
add esp, 0xc
push 4
push 0x46f114
push 0xa
push dword [ebp - 0x40]
call fcn.00408cf0
add esp, 0x10
mov dword [ebp - 0x10], 0x5d7ee166
jmp 0x4043ff
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x10], 0xc0f85824
jmp 0x4043ff
cmp eax, 0xc85d6b53
je 0x4058c5
jmp 0x4043ff
cmp eax, 0x5b8f1c08
jne 0x4043ff
jmp 0x405910
mov edi, ebx
mov eax, dword [ebp - 0x14]
mov ecx, eax
shl ecx, 7
lea ebx, [eax + ecx]
add ebx, 3
mov esi, ebx
shr esi, 2
mov dword [ebp - 0x14], esi
push esi
push 0x4471
call fcn.0040182b
add esp, 8
push esi
push 0x3ec3
call fcn.00402d13
add esp, 8
mov eax, 0x4109e1ec
cmp ebx, 0x324
jae 0x4058bb
mov eax, 0xfc661776
mov dword [ebp - 0x10], eax
mov ebx, edi
jmp 0x4043f9
mov eax, dword [ebp - 0xb4]
mov word [eax], 0
mov eax, dword [ebp - 0x5c]
movzx ecx, word [0x46f224]
mov word [eax], cx
xor eax, eax
inc eax
push eax
push 0x46f226
push eax
push dword [ebp - 0x5c]
call fcn.00408cf0
add esp, 0x10
push ebx
push 0xa00000
push 2
push dword [ebp - 0x1c]
push dword [ebp - 0x5c]
push dword [ebp - 0x68]
call fcn.00411cae
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
imul eax, dword [ebp - 0x14], 0x2a4
add eax, 0x131
mov dword [ebp - 0x14], eax
push eax
push 0x36d2
call fcn.004023a6