Function at 0x41a620
Capabilities:
Contain obfuscated stackstrings
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5bd462
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x633ef8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x40], esi
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a668
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi], eax
mov dword [ebp - 4], 0
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a690
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 4], eax
mov byte [ebp - 4], 1
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a6b6
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 8], eax
mov byte [ebp - 4], 2
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a6dc
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0xc], eax
mov byte [ebp - 4], 3
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a702
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x10], eax
mov byte [ebp - 4], 4
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a728
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x14], eax
mov byte [ebp - 4], 5
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a74e
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x18], eax
mov byte [ebp - 4], 6
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a774
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x1c], eax
mov byte [ebp - 4], 7
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a79a
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x20], eax
mov byte [ebp - 4], 8
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a7c0
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x914], eax
mov byte [ebp - 4], 9
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a7e9
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x918], eax
mov byte [ebp - 4], 0xa
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a812
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x91c], eax
mov byte [ebp - 4], 0xb
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a83b
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x920], eax
mov byte [ebp - 4], 0xc
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a864
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x978], eax
mov byte [ebp - 4], 0xd
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a88d
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x97c], eax
mov byte [ebp - 4], 0xe
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x41a8b6
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x980], eax
mov byte [ebp - 4], 0xf
cmp dword [0x641010], 0
mov dword [esi + 0x984], 0
mov dword [esi + 0x988], 0
jne 0x41a934
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x6e72654b
push eax
mov dword [ebp - 0x17], 0x6c6c64
mov dword [ebp - 0x1b], 0x2e32336c
mov byte [ebp - 0x1c], 0x65
mov dword [ebp - 0x2f], 0x4679706f
mov dword [ebp - 0x2a], 0x41656c
mov byte [ebp - 0x30], 0x43
mov byte [ebp - 0x2b], 0x69
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
je 0x41a934
lea ecx, [ebp - 0x30]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x641010], eax
push str._BrowserSafer
lea eax, [esi + 0x978]
push 0x609340
push eax
call fcn.00415ec0
push str._BrowserSafer
lea eax, [esi + 0x97c]
push 0x609340
push eax
call fcn.00415ec0
push str.BrowseSafer
lea eax, [esi + 0x980]
push 0x609340
push eax
call fcn.00415ec0
mov word [esi + 0x52], 0x2e58
lea edx, [esi + 0x18]
mov dword [esi + 0x4d], 0x46455249
add esp, 0x24
mov dword [esi + 0x54], 0x455845
mov dword [esi + 0x49], 0x4600786f
mov byte [esi + 0x51], 0x4f
mov word [esi + 0x2a], 0x5c61
mov word [esi + 0x2d], 0x7269
mov byte [esi + 0x2c], 0x46
mov dword [esi + 0x24], 0x697a6f4d
mov dword [esi + 0x30], 0x786f46
mov byte [esi + 0x2f], 0x65
mov word [esi + 0x28], 0x6c6c
mov dword [esi + 0x34], 0x65726966
mov dword [esi + 0x38], 0x786f66
mov word [esi + 0x44], 0x6946
mov word [esi + 0x47], 0x6665
mov dword [esi + 0x3e], 0x6c6c697a
mov byte [esi + 0x46], 0x72
mov word [esi + 0x42], 0x2061
mov word [esi + 0x3c], 0x6f4d
mov dword [esi + 0x5b], 0x584f4645
mov word [esi + 0x59], 0x5249
mov dword [esi + 0x5f], 0x4558452e
mov byte [esi + 0x58], 0x46
mov byte [esi + 0x63], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41aa2a
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41aa4b
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x62
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41aa81
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41aaa2
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x69
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41aadc
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41aafd
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6e
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41ab37
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ab58
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x67
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41ab92
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41abb3
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x2e
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41abed
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ac0e
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x78
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41ac48
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ac69
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6d
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [edx]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41aca3
push 0x80070057
call fcn.00416970
mov eax, dword [edx]
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41acc4
push dword [ebp - 0x34]
mov ecx, edx
call fcn.004165b0
lea edx, [esi + 0x18]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6c
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [edx]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41acff
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov edx, 1
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ad26
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x73
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41ad64
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ad86
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x65
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41adc4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ade6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x61
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41ae24
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41ae46
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x72
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41ae84
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41aea6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x63
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41aee4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41af06
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x68
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41af44
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41af66
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x2d
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41afa4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41afc6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6d
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b004
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b026
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x65
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b064
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b086
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x74
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b0c4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b0e6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x61
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b124
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b146
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x64
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b184
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b1a6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x61
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b1e4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b206
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x74
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b244
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b266
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x61
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b2a4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b2c6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x2e
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b304
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b326
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6a
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b364
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b386
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x73
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b3c4
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b3e6
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6f
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x38], eax
add eax, 1
mov dword [ebp - 0x34], eax
jns 0x41b424
push 0x80070057
call fcn.00416970
mov eax, dword [esi + 0x1c]
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0x34]
or ecx, eax
jge 0x41b446
push dword [ebp - 0x34]
lea ecx, [esi + 0x1c]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6e
mov eax, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], ecx
mov eax, dword [esi + 0x1c]
mov byte [ecx + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b483
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b49f
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x73
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b4d9
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b4f5
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x65
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b52f
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b54b
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x61
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b585
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b5a1
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x72
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b5db
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b5f7
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x63
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b631
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b64d
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x68
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b687
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b6a3
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x2e
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b6dd
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b6f9
push edi
lea ecx, [esi + 0x20]
call fcn.004165b0
mov edx, 1
mov eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x38]
mov byte [ecx + eax], 0x6a
mov eax, dword [esi + 0x20]
cmp edi, dword [eax - 8]
jg 0x41aa20
mov dword [eax - 0xc], edi
mov eax, dword [esi + 0x20]
mov byte [edi + eax], 0
mov eax, dword [esi + 0x20]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x38], ecx
lea edi, [ecx + 1]
test edi, edi
jns 0x41b733
push 0x80070057
call fcn.00416970
mov ecx, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or ecx, eax
jge 0x41b74f