Function at 0x429950
Capabilities:
Hash data with md5

Disassembly:
push 0xffffffffffffffff
push 0x492ac1
mov eax, dword fs:[0]
push eax
sub esp, 0x998
mov eax, dword [0x4b6170]
xor eax, esp
mov dword [esp + 0x994], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4b6170]
xor eax, esp
push eax
lea eax, [esp + 0x9ac]
mov dword fs:[0], eax
mov eax, dword [esp + 0x9bc]
mov ebp, dword [esp + 0x9c0]
xor ebx, ebx
mov esi, 0xf
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x8e4], esi
mov dword [esp + 0x8e0], ebx
mov byte [esp + 0x8d0], bl
mov dword [esp + 0x9b4], ebx
mov eax, dword [0x4aeb9c]
mov ecx, dword [str.abk__eiie3lgliec]
mov edx, dword [0x4aeb98]
mov dword [esp + 0x848], eax
mov al, byte [0x4aeba8]
mov dword [esp + 0x840], ecx
mov ecx, dword [0x4aeba0]
mov dword [esp + 0x844], edx
mov edx, dword [0x4aeba4]
mov byte [esp + 0x854], al
lea eax, [esp + 0x840]
mov dword [esp + 0x84c], ecx
mov dword [esp + 0x850], edx
lea edi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x429a20
lea ecx, [esp + 0x840]
push ecx
sub eax, edi
lea ecx, [esp + 0x940]
mov byte [esp + 0x9a8], bl
mov dword [esp + 0x954], ebx
mov dword [esp + 0x950], ebx
mov dword [esp + 0x940], 0x67452301
mov dword [esp + 0x944], 0xefcdab89
mov dword [esp + 0x948], 0x98badcfe
mov dword [esp + 0x94c], 0x10325476
mov dword [esp + 0x998], ebx
mov dword [esp + 0x99c], ebx
mov dword [esp + 0x9a0], ebx
mov dword [esp + 0x9a4], ebx
call fcn.00402ad0
lea edi, [esp + 0x8b0]
lea eax, [esp + 0x93c]
call fcn.00403450
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
mov byte [esp + 0x9d0], 1
push 0xffffffffffffffff
xor edx, edx
mov dword [ecx + 0x18], 7
mov dword [ecx + 0x14], ebx
push ebx
mov eax, edi
mov word [ecx + 4], dx
call fcn.004027a0
lea edi, [esp + 0x40]
call fcn.00403cd0
add esp, 0x1c
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x8d8]
mov byte [esp + 0x9c0], 2
call fcn.00401fb0
mov edi, 0x10
cmp dword [esp + 0x3c], edi
jb 0x429b14
mov eax, dword [esp + 0x28]
push eax
call fcn.0043f604
add esp, 4
mov dword [esp + 0x890], esi
mov dword [esp + 0x88c], ebx
mov byte [esp + 0x87c], bl
mov ecx, 0x44
mov byte [esp + 0x9b4], 3
mov eax, ebp
cmp cx, word [esp + 0x9c4]
jne 0x429c01
mov dword [esp + 0x874], esi
mov dword [esp + 0x870], ebx
mov byte [esp + 0x860], bl
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x429b60
sub eax, edx
push eax
push ebp
lea ecx, [esp + 0x864]
call fcn.004022f0
lea edx, [esp + 0x85c]
lea ecx, [esp + 0x894]
mov byte [esp + 0x9b4], 4
call fcn.004295b0
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x884]
mov byte [esp + 0x9c0], 5
call fcn.00401fb0
cmp dword [esp + 0x8ac], edi
jb 0x429bc3
mov edx, dword [esp + 0x898]
push edx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x8ac], esi
mov dword [esp + 0x8a8], ebx
mov byte [esp + 0x898], bl
cmp dword [esp + 0x874], edi
jb 0x429bf1
mov eax, dword [esp + 0x860]
push eax
call fcn.0043f604
add esp, 4
mov ecx, dword [esp + 0x88c]
mov dword [esp + 0x20], ecx
jmp 0x429db7
mov dword [esp + 0x8ac], esi
mov dword [esp + 0x8a8], ebx
mov byte [esp + 0x898], bl
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x429c20
sub eax, esi
push eax
push ebp
lea ecx, [esp + 0x89c]
call fcn.004022f0
push ebx
lea edx, [esp + 0x8d0]
push edx
or eax, 0xffffffff
lea esi, [esp + 0x89c]
mov byte [esp + 0x9bc], 6
call fcn.0040d330
mov ecx, esi
lea esi, [esp + 0x93c]
call fcn.00402a70
lea edi, [esp + 0x8e8]
mov eax, esi
call fcn.00403450
sub esp, 0x1c
mov ecx, esp
mov byte [esp + 0x9d0], 7
mov dword [esp + 0x34], esp
xor eax, eax
mov dword [ecx + 0x18], 7
mov dword [ecx + 0x14], ebx
push 0xffffffffffffffff
mov word [ecx + 4], ax
push ebx
mov eax, edi
call fcn.004027a0
lea edi, [esp + 0x878]
call fcn.00403cd0
add esp, 0x1c
push 0xa
xor ecx, ecx
lea esi, [esp + 0x28]
mov edx, edi
mov byte [esp + 0x9b8], 8
call fcn.0040ed50
push 0xffffffffffffffff
push ebx
push eax
mov ecx, edi
mov byte [esp + 0x9c0], 9
call fcn.00401fb0
mov byte [esp + 0x9b4], 8
cmp dword [esp + 0x3c], 0x10
jb 0x429cf3
mov ecx, dword [esp + 0x28]
push ecx
call fcn.0043f604
add esp, 4
mov eax, ebp
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x429cf8
sub eax, edx
push eax
push ebp
lea eax, [esp + 0x864]
call fcn.0040d1d0
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x864]
push edx
lea ecx, [esp + 0x884]
call fcn.00401fb0
mov eax, dword [esp + 0x870]
mov esi, 0x10
mov dword [esp + 0x20], eax
cmp dword [esp + 0x874], esi
jb 0x429d4f
mov ecx, dword [esp + 0x860]
push ecx
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x900], 8
mov dword [esp + 0x874], 0xf
mov dword [esp + 0x870], ebx
mov byte [esp + 0x860], bl
jb 0x429d82
mov edx, dword [esp + 0x8ec]
push edx
call fcn.0043f604
add esp, 4
xor eax, eax
mov dword [esp + 0x900], 7
mov dword [esp + 0x8fc], ebx
mov word [esp + 0x8ec], ax
cmp dword [esp + 0x8ac], esi
jb 0x429db7
mov ecx, dword [esp + 0x898]
push ecx
call fcn.0043f604
add esp, 4
push 0x3fc
lea edx, [esp + 0x448]
push ebx
push edx
mov dword [esp + 0x44c], ebx
call fcn.00446600
push 0x3fc
lea eax, [esp + 0x54]
push ebx
push eax
mov dword [esp + 0x58], ebx
call fcn.00446600
add esp, 0x18
mov dword [esp + 0x858], 0xf
mov dword [esp + 0x854], ebx
mov byte [esp + 0x844], bl
xor esi, esi
mov byte [esp + 0x9b4], 0xa
mov ecx, dword [esp + 0x8e0]
lea ebp, [esi + 0x10]
xor edx, edx
mov eax, esi
div ecx
mov edi, edx
cmp edi, ecx
jbe 0x429e2d
call fcn.0043fb41
mov ecx, dword [esp + 0x8e0]
mov eax, dword [esp + 0x8d0]
cmp dword [esp + 0x8e4], ebp
jae 0x429e44
lea eax, [esp + 0x8d0]
movsx edx, byte [edi + eax]
mov dword [esp + esi*4 + 0x440], edx
mov dword [esp + esi*4 + 0x40], esi
inc esi
cmp esi, 0xff
jle 0x429e15
xor ecx, ecx
xor eax, eax
mov edx, dword [esp + eax + 0x40]
mov esi, dword [esp + eax + 0x440]
add esi, edx
add ecx, esi
and ecx, 0x800000ff
jns 0x429e7f
dec ecx
or ecx, 0xffffff00
inc ecx
mov esi, dword [esp + ecx*4 + 0x40]
mov dword [esp + eax + 0x40], esi
add eax, 4
cmp eax, 0x400
mov dword [esp + ecx*4 + 0x40], edx
jl 0x429e60
xor edi, edi
xor eax, eax
xor ebp, ebp
cmp dword [esp + 0x20], ebx
jle 0x429fd3
jmp 0x429eb4
mov eax, dword [esp + 0x18]
inc ebp
and ebp, 0x800000ff
jns 0x429ec5
dec ebp
or ebp, 0xffffff00
inc ebp
mov esi, dword [esp + ebp*4 + 0x40]
add eax, esi
and eax, 0x800000ff
jns 0x429ed9
dec eax
or eax, 0xffffff00
inc eax
mov ecx, dword [esp + eax*4 + 0x40]
mov dword [esp + 0x18], eax
lea eax, [esp + eax*4 + 0x40]
mov dword [esp + ebp*4 + 0x40], ecx
mov dword [eax], esi
cmp edi, dword [esp + 0x88c]
jbe 0x429ef9
call fcn.0043fb41
cmp dword [esp + 0x890], 0x10
mov eax, dword [esp + 0x87c]
jae 0x429f11
lea eax, [esp + 0x87c]
mov edx, dword [esp + ebp*4 + 0x40]
add edx, esi
and edx, 0x800000ff
jns 0x429f27
dec edx
or edx, 0xffffff00
inc edx
mov cl, byte [esp + edx*4 + 0x40]
xor cl, byte [eax + edi]
or eax, 0xffffffff
sub eax, dword [esp + 0x854]
mov byte [esp + 0x14], cl
cmp eax, 1
ja 0x429f46
call fcn.0043cd8f
mov esi, dword [esp + 0x854]
inc esi
cmp esi, 0xfffffffe
jbe 0x429f58
call fcn.0043cd8f
mov eax, dword [esp + 0x858]
cmp eax, esi
jae 0x42a0c0
mov ecx, dword [esp + 0x854]
push ecx
push esi
lea ecx, [esp + 0x848]
call fcn.004020f0
cmp esi, ebx
jbe 0x429fc8
cmp dword [esp + 0x858], 0x10
mov eax, dword [esp + 0x844]
jae 0x429f98
lea eax, [esp + 0x844]
mov ecx, dword [esp + 0x854]
mov dl, byte [esp + 0x14]
mov byte [ecx + eax], dl
cmp dword [esp + 0x858], 0x10
mov eax, dword [esp + 0x844]
mov dword [esp + 0x854], esi
jae 0x429fc5
lea eax, [esp + 0x844]
mov byte [esi + eax], bl
inc edi
cmp edi, dword [esp + 0x20]
jl 0x429eb0
cmp word [esp + 0x9c4], 0x44
jne 0x42a6da
cmp dword [esp + 0x854], 0xa
jae 0x42a0e9
mov esi, dword [esp + 0x1c]
push ebx
mov edi, 0xf
mov dword [esi + 0x18], edi
mov dword [esi + 0x14], ebx
push 0x4a744e
mov ecx, esi
mov byte [esi + 4], bl
call fcn.004022f0
mov ebp, 0x10
cmp dword [esp + 0x858], ebp
jb 0x42a02d
mov edx, dword [esp + 0x844]
push edx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x858], edi
mov dword [esp + 0x854], ebx
mov byte [esp + 0x844], bl
cmp dword [esp + 0x890], ebp
jb 0x42a05b
mov eax, dword [esp + 0x87c]
push eax
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x8c8], 8
mov dword [esp + 0x890], edi
mov dword [esp + 0x88c], ebx
mov byte [esp + 0x87c], bl
jb 0x42a08a
mov ecx, dword [esp + 0x8b4]
push ecx
call fcn.0043f604
add esp, 4
xor edx, edx
mov dword [esp + 0x8c8], 7
mov dword [esp + 0x8c4], ebx
mov word [esp + 0x8b4], dx
cmp dword [esp + 0x8e4], ebp
jb 0x42a820
mov eax, dword [esp + 0x8d0]
push eax
jmp 0x42a818
cmp esi, ebx
jne 0x429f7e
cmp eax, 0x10
mov eax, dword [esp + 0x844]
mov dword [esp + 0x854], ebx
jae 0x42a0e2
lea eax, [esp + 0x844]
mov byte [eax], bl
jmp 0x429fc8
push 0xa
xor ecx, ecx
lea esi, [esp + 0x8ec]
lea edx, [esp + 0x844]
call fcn.0040ed50
mov dword [esp + 0x8ac], 0xf
mov dword [esp + 0x8a8], ebx
mov byte [esp + 0x898], bl
push 0xffffffffffffffff
mov ecx, 0xa
lea esi, [esp + 0x924]
lea edx, [esp + 0x844]
mov byte [esp + 0x9b8], 0xc
call fcn.0040ed50
mov byte [esp + 0x9b4], 0xd
mov esi, dword [esp + 0x8d0]
mov edi, 0x10
cmp dword [esp + 0x8e4], edi
jae 0x42a15f
lea esi, [esp + 0x8d0]
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x42a164
sub eax, edx
push eax
push esi
lea eax, [esp + 0x928]
call fcn.0040d1d0
mov eax, dword [esp + 0x924]
mov byte [esp + 0x9a4], bl
mov dword [esp + 0x950], ebx
mov dword [esp + 0x94c], ebx
mov dword [esp + 0x93c], 0x67452301
mov dword [esp + 0x940], 0xefcdab89
mov dword [esp + 0x944], 0x98badcfe
mov dword [esp + 0x948], 0x10325476
mov dword [esp + 0x994], ebx
mov dword [esp + 0x998], ebx
mov dword [esp + 0x99c], ebx
mov dword [esp + 0x9a0], ebx
cmp dword [esp + 0x938], edi
jae 0x42a1ef
lea eax, [esp + 0x924]
push eax
mov eax, dword [esp + 0x938]
lea ecx, [esp + 0x940]
call fcn.00402ad0
lea edi, [esp + 0x85c]
lea eax, [esp + 0x93c]
call fcn.00403450
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
mov byte [esp + 0x9d0], 0xe
push 0xffffffffffffffff
xor edx, edx
mov dword [ecx + 0x18], 7
mov dword [ecx + 0x14], ebx
push ebx
mov eax, edi
mov word [ecx + 4], dx
call fcn.004027a0
lea edi, [esp + 0x920]
call fcn.00403cd0
add esp, 0x1c
push 0xa
xor ecx, ecx
lea esi, [esp + 0x28]
mov edx, edi
mov byte [esp + 0x9b8], 0xf
call fcn.0040ed50
push 0xffffffffffffffff
push ebx
push eax
mov ecx, edi
mov byte [esp + 0x9c0], 0x10
call fcn.00401fb0
mov ebp, 0x10
mov byte [esp + 0x9b4], 0xf
cmp dword [esp + 0x3c], ebp
jb 0x42a29a
mov eax, dword [esp + 0x28]
push eax
call fcn.0043f604
add esp, 4
mov esi, dword [esp + 0x908]
cmp dword [esp + 0x91c], ebp
jae 0x42a2b1
lea esi, [esp + 0x908]
mov eax, dword [esp + 0x8ec]
cmp dword [esp + 0x900], ebp
jae 0x42a2c8
lea eax, [esp + 0x8ec]
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x42a2e8
cmp cl, bl
je 0x42a2e4
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x42a2e8
add eax, 2
add esi, 2
cmp cl, bl
jne 0x42a2c8
xor eax, eax
jmp 0x42a2ed
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x42a50e
push 0xffffffffffffffff
mov ecx, 0xa
lea esi, [esp + 0x28]
lea edx, [esp + 0x844]
call fcn.0040ed50
mov byte [esp + 0x9b4], 0x11
cmp dword [eax + 0x18], ebp
jb 0x42a31e
mov esi, dword [eax + 4]
jmp 0x42a321
lea esi, [eax + 4]
mov edi, dword [esp + 0x1c]
mov ebp, 0xf
mov eax, esi
mov dword [edi + 0x18], ebp
mov dword [edi + 0x14], ebx
mov byte [edi + 4], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x42a338
sub eax, edx
push eax
push esi
mov ecx, edi
call fcn.004022f0
mov esi, 0x10
cmp dword [esp + 0x3c], esi
jb 0x42a362
mov ecx, dword [esp + 0x28]
push ecx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
cmp dword [esp + 0x91c], esi
jb 0x42a387
mov edx, dword [esp + 0x908]
push edx
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x874], 8
mov dword [esp + 0x91c], ebp
mov dword [esp + 0x918], ebx
mov byte [esp + 0x908], bl
jb 0x42a3b6
mov eax, dword [esp + 0x860]
push eax
call fcn.0043f604
add esp, 4
xor ecx, ecx
mov dword [esp + 0x874], 7
mov dword [esp + 0x870], ebx
mov word [esp + 0x860], cx
cmp dword [esp + 0x938], esi
jb 0x42a3eb
mov edx, dword [esp + 0x924]
push edx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x938], ebp
mov dword [esp + 0x934], ebx
mov byte [esp + 0x924], bl
cmp dword [esp + 0x8ac], esi
jb 0x42a419
mov eax, dword [esp + 0x898]
push eax
call fcn.0043f604
add esp, 4
mov dword [esp + 0x8ac], ebp
mov dword [esp + 0x8a8], ebx
mov byte [esp + 0x898], bl
cmp dword [esp + 0x900], esi
jb 0x42a447
mov ecx, dword [esp + 0x8ec]
push ecx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x900], ebp
mov dword [esp + 0x8fc], ebx
mov byte [esp + 0x8ec], bl
cmp dword [esp + 0x858], esi
jb 0x42a475
mov edx, dword [esp + 0x844]
push edx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x858], ebp
mov dword [esp + 0x854], ebx
mov byte [esp + 0x844], bl
cmp dword [esp + 0x890], esi
jb 0x42a4a3
mov eax, dword [esp + 0x87c]
push eax
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x8c8], 8
mov dword [esp + 0x890], ebp
mov dword [esp + 0x88c], ebx
mov byte [esp + 0x87c], bl
jb 0x42a4d2
mov ecx, dword [esp + 0x8b4]
push ecx
call fcn.0043f604
add esp, 4
xor edx, edx
mov dword [esp + 0x8c8], 7
mov dword [esp + 0x8c4], ebx
mov word [esp + 0x8b4], dx
cmp dword [esp + 0x8e4], esi
jb 0x42a507
mov eax, dword [esp + 0x8d0]
push eax
call fcn.0043f604
add esp, 4
mov eax, edi
jmp 0x42a822
mov edi, dword [esp + 0x1c]
push ebx
mov esi, 0xf
mov dword [edi + 0x18], esi
mov dword [edi + 0x14], ebx
push 0x4a744e
mov ecx, edi
mov byte [edi + 4], bl
call fcn.004022f0
cmp dword [esp + 0x91c], ebp
jb 0x42a546
mov ecx, dword [esp + 0x908]
push ecx
call fcn.0043f604
add esp, 4
mov ebp, 8
mov dword [esp + 0x91c], esi
mov dword [esp + 0x918], ebx
mov byte [esp + 0x908], bl
cmp dword [esp + 0x874], ebp
jb 0x42a579
mov edx, dword [esp + 0x860]
push edx
call fcn.0043f604
add esp, 4
xor eax, eax
cmp dword [esp + 0x938], 0x10
mov dword [esp + 0x874], 7
mov dword [esp + 0x870], ebx
mov word [esp + 0x860], ax
jb 0x42a5af
mov ecx, dword [esp + 0x924]
push ecx
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x8ac], 0x10
mov dword [esp + 0x938], esi
mov dword [esp + 0x934], ebx
mov byte [esp + 0x924], bl
jb 0x42a5de
mov edx, dword [esp + 0x898]
push edx
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x900], 0x10
mov dword [esp + 0x8ac], esi
mov dword [esp + 0x8a8], ebx
mov byte [esp + 0x898], bl
jb 0x42a60d
mov eax, dword [esp + 0x8ec]
push eax
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x858], 0x10
mov dword [esp + 0x900], esi
mov dword [esp + 0x8fc], ebx
mov byte [esp + 0x8ec], bl
jb 0x42a63c
mov ecx, dword [esp + 0x844]
push ecx
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x890], 0x10
mov dword [esp + 0x858], esi
mov dword [esp + 0x854], ebx
mov byte [esp + 0x844], bl
jb 0x42a66b
mov edx, dword [esp + 0x87c]
push edx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x890], esi
mov dword [esp + 0x88c], ebx
mov byte [esp + 0x87c], bl
cmp dword [esp + 0x8c8], ebp
jb 0x42a699
mov eax, dword [esp + 0x8b4]
push eax
call fcn.0043f604
add esp, 4
xor ecx, ecx
cmp dword [esp + 0x8e4], 0x10
mov dword [esp + 0x8c8], 7
mov dword [esp + 0x8c4], ebx
mov word [esp + 0x8b4], cx
jb 0x42a507
mov edx, dword [esp + 0x8d0]
push edx
call fcn.0043f604
add esp, 4
mov eax, edi
jmp 0x42a822
lea edx, [esp + 0x840]
lea ecx, [esp + 0x85c]
call fcn.00429220
mov byte [esp + 0x9b4], 0x12
cmp dword [esp + 0x874], 0x10
mov edi, dword [esp + 0x860]
jae 0x42a70d
lea edi, [esp + 0x860]
call fcn.00429870
mov esi, dword [esp + 0x1c]
mov edi, eax
mov ebp, 0xf
mov ecx, edi
mov dword [esi + 0x18], ebp
mov dword [esi + 0x14], ebx
mov byte [esi + 4], bl
lea edx, [ecx + 1]
jmp 0x42a730
mov al, byte [ecx]
inc ecx
cmp al, bl
jne 0x42a730
sub ecx, edx
push ecx
push edi
mov ecx, esi
call fcn.004022f0
mov edi, 0x10
cmp dword [esp + 0x874], edi
jb 0x42a760
mov eax, dword [esp + 0x860]
push eax
call fcn.0043f604
add esp, 4
mov dword [esp + 0x874], ebp
mov dword [esp + 0x870], ebx
mov byte [esp + 0x860], bl
cmp dword [esp + 0x858], edi
jb 0x42a78e
mov ecx, dword [esp + 0x844]
push ecx
call fcn.0043f604
add esp, 4
mov dword [esp + 0x858], ebp
mov dword [esp + 0x854], ebx
mov byte [esp + 0x844], bl
cmp dword [esp + 0x890], edi
jb 0x42a7bc
mov edx, dword [esp + 0x87c]
push edx
call fcn.0043f604
add esp, 4
cmp dword [esp + 0x8c8], 8
mov dword [esp + 0x890], ebp
mov dword [esp + 0x88c], ebx
mov byte [esp + 0x87c], bl
jb 0x42a7eb
mov eax, dword [esp + 0x8b4]
push eax
call fcn.0043f604
add esp, 4
xor ecx, ecx
mov dword [esp + 0x8c8], 7
mov dword [esp + 0x8c4], ebx
mov word [esp + 0x8b4], cx
cmp dword [esp + 0x8e4], edi
jb 0x42a820
mov edx, dword [esp + 0x8d0]
push edx
call fcn.0043f604
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x9ac]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x994]
xor ecx, esp
call fcn.0043f4b7
add esp, 0x9a4
ret